A 3D/2D game engine that supports both DirectX 11, OpenGL 4.5 and OpenGL ES 3.0
**Note:- For the most recent build of the engine, please check out the DayToDay branch of the repository.
Features:-
- Support for Windows, Linux, WebGL 2.0 and Android.
- Support for DirectX 11 and OpenGL 4+.
- Support for PNG, JPEG, BMP, DDS, TIFF, WBMP, WebP and more using the FreeImage library.
- Support for FBX model format that then gets converted to a custom model loading format called BFX.
- Support for custom file formats like BFA for Animation and BFM for tile maps.
- Support for 16bit, 32bit and IEEE float WAV file format loading.
- Support for OpenAL-Soft 1.17.2 for 3D audio.
- Support for ttf font rendering using FreeType v2.7.1 library.
- Rendering 3D models with basic Phong shading.
- Rendering 2D sprites with sprite batching.
- Rendering 2D textures.
- Rendering Texture Cubes and Skybox.
- Rendering Tile maps.
- Rendering to a 2D texture using Framebuffer.
- Support for Ambient, diffuse and specular lighting.
- Support for Material system that can specify Ambient, diffuse and specular colors and support for diffuse and specular maps.
- Support for playing sprite animation.
- Support for terrain generation using height maps.
- Support for GUI system.
- Support for math library that has Vector2, 3 and 4, 4x4 Matrix and Rectangle.
- Support for basic AABB collision detection.
- Support for both Perspective and Orthographic projection.
- Support for Camera system.
- Support for basic TCP networking.
- Support for map editor.
- Controller support on Windows using Xinput v1.4.
Platform state as of 14/02/2019:-
- Windows - OpenGL 4.5:- working
- Windows - DirectX 11:- broken
- Linux - OpenGL 4.5:- broken
- Android - OpenGL ES 3.0:- broken
- Web - OpenGL ES 3.0:- broken
If you like what I'm doing here and would like to support the engine development, you can become a Patreon supporter.
This is the sponza scene running ony my game engine with basic diffuse lighting.