Tolima is a from scratch (using no third party libaries such as OpenGL) 3D engine I wrote for educational purposes, mainly to learn C++. It reads Wavefront .obj files in conjuction with Material Template Library files and renders them with Gouraud shading using the Phong illumination model. The SDL library deals with displaying the scene. To navigate in the scene, you can use standard FPS controls.
./tolima file.obj file.mtl
Keyboard navigation in the scene:
z
translates forwards
translates backwardq
translates leftd
translates righta
rotates lefte
rotates rightw
translates upx
translates downr
toggles wireframe mode
- Since no default shaders are implemented, not specifying the mtl file or having an mtl file with missing Phong illumination parameters (Ks, Kd or Ka) will cause the program to crash
- Poor performance
- Some class implementations should be reworked (mainly
Loader
andScene
)