Assignment 1
Task 1
1.1) Rotating Cow
1.2) Dolly Zoom
Task 2
2.1) Tetrahedron
The tetrahedron should have 4 vertices and 4 faces.
2.2) Cube
The cube should have 8 vertices and 12 triangle faces.
Task 3) Retextured Cow
The colors chosen are Cyan (0,1,1) and Magenta(1,0,1).
Task 4) Camera Transformations
4.1)
In this image, the R matrix is used to rotate the cow 90 degrees.
4.2)
In this image, the T matrix is used to translate the cow along the z-axis into the plane.
4.3)
In this image, the cow is translated along both the X and Z axes out of the plane.
4.4)
In this image, the cow is rotated 90 degrees, along the vertical Y axis.
Task 5) Render Generic 3D Representations
5.1) Render Point Clouds
5.2) Render Parametric Functions
5.3) Render Implicit Functions
Custom shape: The front view looks like an Among Us character!
Rendering as a mesh vs a point cloud:
- Rendering Speed: Rendering a point cloud is faster than rendering as a mesh as it is more simple, whereas a mesh can contain a lot more faces for the same number of vertices.
- Rendering Quality: Meshes when constructed well, provide a much better understanding of the topology of the object as compared to a point cloud. It can be hard to understand the connectivity of an object in a point cloud. A mesh also more closely resembles the way we see the world as compared to a point cloud.
- Ease of Use: Meshes are harder to use than point clouds as far as manipulation is concerned. It is much easier to modify point clouds as compared to meshes as meshes are difficult to change. A small change would require having to change face connectivity, which can be tedious.
- Memory Usage: Point clouds always utilize lower memory as compared to meshes as they can always be represented using 3*N numbers. Meshes, however, occupy much more memory depending on the number of faces in the object which be more than 3 times the number of points, thus taking up a lot more memory. This is especially difficult when rendering on browsers.
Task 6) Do Something Fun!
The Titanic, Jack and Rose!
Task 7) Sampling Points on Meshes