Introduction
Explosion is a cross-platform C++ game engine, based on modern graphics api (aka Vulkan, DirectX 12, Metal), powered by ECS gameplay framework.
Requirements
You need install those tools to system by yourself and add them to path:
build steps of engine may use them.
Build
Configure Conan
Some third-party libraries managed by Conan may need to be downloaded and installed from our private repository. Please configure Conan's remote first:
conan remote add explosion https://kindem.online/artifactory/api/conan/conan
macOS Notice
If you have not installed xcode and xcode command line tool, you need install them, xcode can be downloaded from app store, and xcode command line tool can be installed with:
And you need check the xcode-select path:
If the output not equals /Applications/Xcode.app/Contents/Developer, you need to set it:
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
Windows Notice
Some third-party libraries managed by conan may fail to install or compile on Windows due to excessively long build tree paths. So you need to configure the environment variable CONAN_HOME and set it to a relatively short path, such as C:\t
Build Project
The following table contains supported platform, toolchain and generator:
| Platform | Arch | Toolchain | Generator |
| Windows | x64 | Visual Studio | Visual Studio 2019 |
| Visual Studio 2022 | |||
| Ninja | |||
| Ninja Multi-Config | |||
| macOS | arm64 | Apple Clang | Unix Makefiles |
| Ninja | |||
| Ninja Multi-Config |
By cause of cmake, we recommend CLion as Explosion's IDE, which can help you build and manage project simplely, and brings best coding experience to you. When use CLion as IDE, you just need open the project and configure cmake toolchain and generator in settings, press build and everything is down.
If you want to continue with command line mode, the following commands may help:
# for single config generator, such as Ninja, Unix Makefiles cmake -S . -B <build_dir> -G <generator_name> -DCMAKE_BUILD_TYPE=<build_config> cmake --build <build_dir> # for multi config generator, such as Visual Studio, Ninja Multi Config cmake -S . -B <build_dir> -G <generator_name> cmake --build <build_dir> --config <build_config>
The parameters' meaning:
<build_dir>: Build directory for saving cmake temporal files and dist binaries. You can transfer abuildor any directory you like.<build_config>: Build config of cmake, such asDebugorRelease.<generator_name>: C++ generator which cmake will use to build project, you can transfer any generator in table list above, such asVisual Studio 2019.
After build the project, you can get all dist binaries in <build_dir>/dist.
Third Party Project Usage
Thanks all those following projects:
- Conan
- DirectX-Headers
- Vulkan
- DirectXShaderCompiler
- GLFW
- clipp
- debugbreak
- LLVM
- googletest
- taskflow
- cityhash
- stb
- fmt
- SPIRV-Cross
- assimp
- VulkanMemoryAllocator
- Qt6
- rapidjson
- cpp-httplib
- React
- Vite
- HeroUI
- TailWindCSS
Sponsor
License
MIT @ Explosion Development Team All right Reserved 2025.
