The solar system - shaders
The shaders simulate the following:
The planets rotating on their Y-axis
Diffuse lighting
Specular highlights
What I learned :
3d rendering: understanding notions such as vertices, fragments, object, world, view and clip space
3d rendering: using Unity's built-in functions to change 3d model data from object space to world space and to clip space
Math: using the dot product between light direction and normals to simulate diffuse light bouncing the planets’ surface, and between the camera view direction and the reflected light to simulate specular highlights.
Lighting: the way objects change color when light bounces off their surface
Math: Rotating vertices with rotation matrices (making the planets rotate on their Y-axis)
Math: trigonometry to rotate the planets around the sun