# 3D triangle renderer Short interactive C program for rendering 3D triangles. ## Compiling The only requirements are the SDL2 devel files. ```sh make ``` ## Controls - **W,A,S,D** for moving. - **M** for toggling mouse-lock. - **arrows** for rotating camera. - **J,K** for moving vertically. - **I** for object importing. - **=/-** for increasing/decreasing speed. ## Object files Object files are a modified/simplified version of standard .obj files. Available potions are the following: 1. **M** *factor* - multiply factor. Vertices added will have their coordinates multiplied. 2. **v** *x* *y* *z* - add vertex. 3. **f** *v1* *v2* *v3* - add triangle face with following vertices. 4. **F** *v1* *v2* *v3* *color* - add triangle face with color and following vertices. Lines that start with any other character will be ignored. ## TO-DO List - use matrix math instead of trigonometric formulas. - crop triangles close to screen. - fix Z depth. - faster drawing. - config file with controls and defines. - organize functions in files properly.