Cross-API-Engine is a fully modular and plugin-oriented engine architecture designed to decouple every subsystem into independently loadable runtime modules. Rather than focusing only on graphics API abstraction, the objective is to create an engine where every component can be swapped, extended, or replaced without modifying core code. This enables rapid experimentation, platform portability, performance benchmarking, and true freedom in engine architecture research.

| Platform | Compiler | Build system | Status |
|---|---|---|---|
| Windows | MSVC (Visual Studio 2026 / 18.x) | MSBuild / Ninja | ✅ |
| Linux | GCC ≥ 13 | Ninja / Make | ✅ |
| MacOS | GCC ≥ 13 / Clang | Ninja / Make | ✅ |
| iOS | ❌ | ||
| tvOS | ❌ | ||
| Android | ❌ | ||
| Web | ❌ |
Make sure you have the following dependencies installed on your system:
This section targets engine developers and contributors.
CAE_STRICT_WARNINGS (default: OFF): Enable strict warning level.CAE_ENABLE_SANITIZERS (default: OFF): Enable address and undefined sanitizers.CAE_ENABLE_LTO (default: OFF): Enable LTO on final targets.CAE_BUILD_TESTS (default: OFF): Enable building unit tests.CAE_CLANG_TIDY (default: OFF): Enable clang tidy usage.CAE_CLANG_FORMAT (default: OFF): Enable clang format usage.CAE_BUILD_DOC (default: OFF): Enable building doxygen documentation.Unit tests are based on Google Test.
Use the CAE_BUILD_TESTS option.
documentation is generated using Doxygen.
Use the CAE_BUILD_DOC option.
Want to contribute? See Contributing guidelines.
Please review our Security Policy for more information on reporting security vulnerabilities.
This project is licensed under the MIT License - see the License file for details.