This was written in C++ using OpenGL and uses Loop subdivision of the icosahedron to generate an approximation to the sphere. The sphere is then distorted into an ellipsoid by finding what the phi and rho angles of each vertex would be if the vertex existed in the standard spherical coordinate representation of the sphere (the latitude/longitude representation). Then the appropriate transformation is applied to the vertex based on this information.

The "exploded view" of the ellipsoid occurs by scaling the triangles inward and outward along their normal vector, which has already been calculated for lighting purposes. These normal vectors are also used to add depth to the scene, as when the triangles turn into triangular prisms.

The black "mesh" background is simply a scaled copy of the triangles used to draw the ellipsoid, except lines are used to connect these vertices instead of making polygons (triangles) out of them.

Justin Patrick Wilkins

The music was created by my friend Jesse. Find him here:

Loading more stuff…

Hmm…it looks like things are taking a while to load. Try again?

Loading videos…