Created a smooth 360-degree rotation of the cow mesh, demonstrating camera control and animation techniques.
360-degree rotation of the cow mesh
Implemented the famous dolly zoom effect by simultaneously changing the field of view and camera distance to maintain subject size while creating perspective distortion.
distance = focal_length / (2 * tan(fov/2))
Dolly zoom effect showing perspective distortion
Manually defined vertices and faces for a tetrahedron mesh:
360-degree rotation of the tetrahedron
Created a cube mesh with proper triangular face decomposition:
360-degree rotation of the cube
Implemented gradient texturing from front to back of the cow using linear interpolation based on z-coordinates.
Color Choices:
Gradient texture from pink (front) to green (back)
Determined the relative camera transformations (R_relative, T_relative) to achieve specific views of the cow with axis.
R_relative: 90° rotation around Z-axis
T_relative: [0,0,0]
R_relative: Identity
T_relative: [0,0,2]
R_relative: Identity
T_relative: [0.5,-0.5,0]
R_relative: -90° around Y-axis
T_relative: [3,0,3]
Generated point clouds from RGB-D data using the unproject_depth_image function:
Point cloud from first RGB-D image
Point cloud from second RGB-D image
Combined point cloud (union of both images)
Created torus point cloud using parametric equations:
360-degree view of torus point cloud with visible hole
Created torus mesh using implicit function and marching cubes algorithm:
Torus mesh from implicit function
Mesh Rendering:
Point Cloud Rendering:
Created an immersive "flying through torus" animation with dynamic camera movement:
Immersive flying through torus animation
Multiple torus scene with 5 tori arranged in a circle
Implemented stratified sampling on triangle meshes using area-weighted face selection and barycentric coordinate sampling:
10 samples - Very sparse
100 samples - Better coverage
1000 samples - Good detail
10000 samples - Very dense