A modern C++ game engine designed with flexibility and performance in mind, featuring a modular multi-renderer architecture.
- Modern C++20 codebase
- Multi-renderer architecture
- ImGui integration
- Cross-platform support
- Built-in profiling tools
- Asset management system
- Event system
- Input handling
| Platform |
Status |
Notes |
| Windows |
Full |
Primary development platform |
| Linux |
Partial |
Basic support, limited features |
| MacOS |
None |
No current plans |
| Renderer |
Status |
Notes |
| OpenGL |
Full |
Full support |
| Vulkan |
Partial |
Basic support, limited features |
| DirectX |
Planned |
Planned for future |
| Metal |
None |
No current plans |
- C++20 compatible compiler
- Xmake build system
- Clone the repository:
git clone https://github.com/yourusername/DragonForge-Engine.git
cd DragonForge-Engine
- Generate project files:
- Run
scripts/GenerateProjectFiles.ps1
- Debug: Development with full debug information
- Release: Fully optimized release build
- Profiling: Optimized build with profiling enabled
/source
/application - Main application layer
/engine - Core engine systems
/shaders - Shader files
/scripts - Build and utility scripts
/xmake - Build system configuration and utilities
/game - Binary output directory
/build - Intermediate build files
| Library |
License |
| Assimp |
BSD 3-clause License |
| fmt |
MIT License |
| FreeType |
FreeType License (BSD-style) |
| GLM |
MIT License |
| SDL3 |
Zlib License |
| STB |
MIT License / Public Domain |
| GLAD |
MIT License |
| Dear ImGui |
MIT License |
| Slang |
MIT License |
| Vulkan Loader |
Apache License 2.0 |
| Vulkan Headers |
Apache License 2.0 |
| Vulkan-HPP |
Apache License 2.0 |
| Vulkan Validation Layers |
Apache License 2.0 |
| Vulkan Memory Allocator HPP |
MIT License |
| SPIRV-Cross |
Apache License 2.0 |
| Clay |
MIT License |
| MSDF Atlas Gen |
MIT License |
| Tracy Profiler |
BSD 3-clause License |
Most parts of this documentation were generated with the assistance of AI tools.