

We need 4 vertices and 4 faces.
We need 8 vertices and 12 triangular faces.
I set color1=torch.Tensor([1.0, 1.0, 0.0]), color2=torch.Tensor([0.5, 0.0, 0.5]) so that the cow went from yellow to purple.
For the top-left image, the camera should be rotated 90 degrees clockwise around the z-axis,
so the R_relative=[[0, 1, 0], [-1, 0, 0], [0, 0, 1]] and the T_relative=[0, 0, 0]
For the top-right image, the camera should be moved back along the z-axis a couple of points, so the R_relative=[[1, 0, 0], [0, 1, 0], [0, 0, 1]] and the T_relative=[0, 0, 2]
For the bot-left image, the camera should be moved to the right, along the x-axis, and then moved up along the y-axis, so the R_relative=[[1, 0, 0], [0, 1, 0], [0, 0, 1]] and the T_relative=[0.5, -0.5, 0]
For the bot-right image, the camera should be rotated along the y-axis 90 degrees counter-clockwise, moved forward along the z-axis, and moved to the right along its x-axis, so the R_relative=[[0, 0, 1], [0, 1, 0], [-1, 0, 0]] and the T_relative=[-3.0, 0, 3]
Here are three GIFs side by side:
Torus gif

Ellipsoid gif

Torus gif

When generating a mesh, they are usually higher quality because we represent meshes with vertices and connected surfaces like triangles. However, when generating a point cloud, we need to add a lot more points in order to get similar quality. This increases runtime and memory usage. However, the main benefit of a point cloud is that it's easier to process and deal with, since it is just a set of 3D points and their RGB values. Meshes are generally harder to deal with we need to define the connectivity between mesh vertices.
Ellipsoid gif

I created a rectangular prism on the ground, and created a sphere mesh and colored it orange, to resemble a basketball.

Here are three GIFs side by side. It is in order of original mesh, 10 points, 100 points, 1000 points, 10000 points: