Ameya
MATERIAL ENCAPSULATION
Controls: Esc - To quit game
Arrow Keys to give move direction to the sphere
WASD to change the rotation-axis of the cube
Move the camera
OU(Z-axis)
IK(Y-axis)
JL(X-axis)
Rotate the camera
YR(Z-axis)
TG(Y-axis)
FH(X-axis)
C/V to traverse cameras in the camera vector
Below is my human readable material file for a brown bear-shaped gameobject.
The highlighted line is the constant data struct representing g_color.
In the above screen shot you can see two bears colored differently using materials.
I have made the gameobject loading binary and everything gets loaded through it. As far as I think, my game is now completely data driven. I have started working on making a snake out of the sphere by sharing mesh pointer. I have not yet finished it.
For this project, we made a material file and loaded effects through it. I have reduced both material and effect binding to minimum required. Below is my sorting code.
I also did the optional requirement and made shaders completely platform independent. Below is my std_vertex.txtshader and my std_fragment.txtshader