A 3d game engine written in C99. This is mainly a learning tool, but I hope to eventually get it to the point of being a working game!
- CMake
- SDL2 (
SDL2-devel
orlibSDL2-dev
) - GLEW (
glew-devel
orlibglew-dev
)
- Make sure you have all the required libraries installed
- Create a new folder for the binaries and object files
- Change directory into build folder, and run
cmake ../src
to build the required Makefiles. - Run
make
to build and link the executable.
- Replace all old GL/GLU function calls with custom math functions
- Update code to modern OpenGL
- Implement model loading from files
- Framebuffers/Cube Framebuffers
- Rewrite objects and lighting to be more flexible
- Multiple lights and scene lighting
- Point and directional shadows
- Better collision detection and physics routines
- UI routines
- Bone animations
- Deferred rendering
- Overhaul of error handling
- Configuration files and/or settings
- Post processing shaders
- Add in custom image library for JPEG and PNG image support
- HDR and tone mapping
- Lua support
- Add spotlight
- Draw batching
- Add support for Vulkan and multiple backends