Simple, work in progress, learning-oriented C++ graphics engine.
Build instructions (Windows only atm, latest branch is c#-scripting
):
- Visual Studio 2019 or above required, CMake required
- Clone this repository
- Run
git checkout --latest_branch_name--
, where --latest_branch_name-- is the name written above. - Run
git submodule init
- Run
git submodule update
- Run the relevant script in the scripts folder. Win-GenMSVC19.bat generates a Visual Studio 2019 solution, Win-GenMSVC22.bat generates a Visual Studio 2022 solution.
- Open DebutEngine.sln, right click on Debutant, click on "Set as startup project"
- Compile the solution
- Copy the Resources/assets folder in Build/Debutant/Build
- If you want to open the default projects too, move the Lib and Debut folders there as well.
Yes, I should really add some CMake stuff to automatically copy things. I should also probably make a proper installer and put the Resources in a better place.
TODO List:
- Architecture
- Multithreading
- Vulkan
- SPIR-V
- 2D
- Tilemaps (editor too)
- Physics
- 2D Physics
- Joints
- 3D physics
- Capsule and cylinder colliders, joints
- The cool stuff that Jolt apparently supports
- Triggers
- 2D Physics
- VFX
- Particle systems
- Rendering
- PBR rendering
- Post processing effects
- Anti aliasing
- Bloom
- Depth of field
- Motion blur
- Cromatic aberration
- HDR
- Color curves
- Ambient occlusion
- Deferred rendering
- LODs
- Veeery ambitious but I'd like to have a look at Nanite
- Fog
- Animation
- 2D Skeletal
- 2D Traditional
- 3D
- AssetManager
- Release resources when not used
- Detect file system changes?
- UI system
- Probably use an external library
- Utility
- Prefabs
- Event system
- Editor
- Camera preview
- Debug Console
- Shader / material graph
- Sprite slicing
- Move files (don't break the AssetManager while doing so)
- Terrain editor :O
- Debugging
- Profiler
- Memory usage measuring (custom allocators, GC)