Lighting implemented in OpenGL ES 3.
Cube object consists of 24 vertices.
Each side of the cube object is detached from the others and does not share vertices.
Normal vector for each side of the cube object is different from each other.
Orientation of the cube object can be adjusted.
Each side of the cube object has its own color.
The type of light source utilized is a point Light with falloff distance implemented to create light attenuation effect.
Distance from the light source to the cube object can be adjusted via slider.
Position of the light source can also be adjusted.
Shader program can be switched between Gouraud shading(Vertex Lighting) and Phong shading(Per-Pixel Lighting).
Each term from the Lighting equation(Rendering equation) can be modified independently so that the effect each term has on the cube object can be observed in real-time.
Platform: iOS
Programming Language: Objective-C, C/C++, GLSL
Device: iPad Air