The Unnamed Game Engine, is a 3D game engine build with OpenGL and using ENTT as a backbone for its entity component system. A complete list of features (and demonstrations) is given below.
Please note that the engine is still developing and subject to big changes.
At its current state the game engine supports the following features.
The game engine implements various forms of PBR textures, using the Cook-Torrance BRDF and the GGX (as demonstrated by Burley and Brent, 2012) material models. Concretely the engine allows creating and editing PBR materials from scratch. An example using the interactive inspector is shown below:
Additionally, the engine supports textured PBR materials with albedo, normal, roughness, metallic and ambient occlusion maps. These textured materials can even be combined to create animations likes this one:
The game engine implements real-time shadows using shadow mapping and supports multiple light sources. To mitigate anti-aliasing the shadow map is filtered using percentage closest filtering as described by Reeves et. al, 1987.
To render glyphs, the game engine implements the signed distance field introduced by Green, 2007. With this technique we can even create effects such as animating the width of fonts as shown in the example below.
For animations the engine supports composite cubic Bézier curves animation:
Furthermore, the engine allows for hand-programmed joint animations to create effects like this one:
First clone the repository. After you can either open the project in your favorite IDE or manually build and run.
To manually build, first navigate inside the project by running:
cd UnnamedGameEngine
Then make the build
directory and navigate inside of it:
mkdir build && cd build
Last generate the makefiles and build the project:
cmake .. && make
You should now be able to find the Game
executable which you can use to launch the example game.
This is a non-exhaustive list of features we would like to add to the game engine. Feel free to get in touch if you want to implement any of them (or some other feature).
- Physics system
- Audio system
- Frustum Culling
- (Animated) Skyboxes
- Cook, Robert L., and Kenneth E. Torrance. "A reflectance model for computer graphics." ACM Siggraph Computer Graphics 15.3 (1981): 307-316.
- Burley, Brent, and Walt Disney Animation Studios. "Physically-based shading at disney." ACM Siggraph. Vol. 2012. vol. 2012, 2012.
- Reeves, William T., David H. Salesin, and Robert L. Cook. "Rendering antialiased shadows with depth maps." Proceedings of the 14th annual conference on Computer graphics and interactive techniques. 1987.
- Green, Chris. "Improved alpha-tested magnification for vector textures and special effects." ACM Siggraph 2007 courses. 2007. 9-18.