Rendering engine for the Carbon Game Engine, the technology behind EVE Online and EVE Frontier.
Trinity is a C++ renderer with DirectX 11, DirectX 12 and Metal backends, a shader compiler, and a Python exposure layer through Blue. It is one of the Carbon Engine components.
- Git, with SSH access to GitHub. The two submodules clone over HTTPS, but the
carbon-*packages that vcpkg builds from our registry are fetched over SSH (git@github.com:carbonengine/...). - CMake 3.31 or newer (required by
CMakePresets.json). - Windows: Visual Studio 2026 with the v145 C++ build tools.
- macOS: Xcode command line tools.
git clone --recurse-submodules https://github.com/carbonengine/trinity.gitOr if already cloned then git submodule update --init --recursive
Dependencies come through vcpkg: vendor/github.com/microsoft/vcpkg plus the
Carbon vcpkg registry for the carbon-* components and a few SDKs.
The first configure builds them, which takes a while.
Generate a solution, then you can handle the rest from your IDE for local dev workflows:
cmake --preset x64-windows-internalThis will generate an .slnx at .cmake-build-<preset-name>/. Run cmake --list-presets to see the presets
(x64-windows-*, arm64-osx-*, x64-osx-*, each in internal, release, debug and trinitydev flavours).
Or build from the command line:
cmake --build .cmake-build-x64-windows-internal --config Release- Open the generated solution, not the repo folder. Opening the folder makes Visual Studio reconfigure the same build directory
Configure fails on a missing
/scripts/toolchains/windows.cmake? SetPATH_TO_VCPKG_ROOTin your environment to<repo>/vendor/github.com/microsoft/vcpkg.
All are OFF by default, so a plain build has no renderer backend. Pass them as -D when
generating; each one pulls extra vcpkg packages on that configure.
| Option | Effect |
|---|---|
BUILD_DX11 |
DirectX 11 targets |
BUILD_DX12 |
DirectX 12 targets |
BUILD_METAL |
Metal targets |
BUILD_SHADER_COMPILER |
Build the shader compiler |
WITH_GRANNY |
Granny .gr2 support |
To install trinity next to the rest of the engine components, add the destination when generating the solution:
cmake --preset x64-windows-internal `
-DINSTALL_TO_MONOLITH=ON `
-DCMAKE_INSTALL_PREFIX="<vendor-folder>"Contributions are welcome. Please read the Carbon Engine contributing guide before opening an issue or pull request. It covers the workflow, the CLA and the pull request template, and applies to every carbonengine repository. Please also follow the Code of Conduct, and report security issues privately as described in the Security Policy rather than in a public issue.
By submitting a pull request or otherwise contributing to this project, you agree to license your contribution under the MIT License, and you confirm that you have the right to do so.
© 2026 Fenris Creations
This software is provided by Fenris Creations. See NOTICE for included 3rd party code.
Trademark Notice: Fenris Creations is a trademark of CCP ehf.
This project is licensed under the MIT License. Nothing in the MIT License grants any rights to Fenris Creations' trademarks or game content.