@@ -15,6 +15,7 @@ Rather than focusing only on graphics API abstraction, the objective is to creat
1515This enables rapid experimentation, platform portability, performance benchmarking, and true freedom in engine architecture research.
1616
1717![ Architecture Diagram] ( https://raw.githubusercontent.com/bobis33/Cross-API-Engine/main/assets/diagram.png )
18+
1819## Supported Platforms
1920| Platform | Compiler | Build system | Status |
2021| ----------| ----------------------------------| -----------------| --------|
@@ -26,7 +27,7 @@ This enables rapid experimentation, platform portability, performance benchmarki
2627| Android | | | ❌ |
2728| Web | | | ❌ |
2829
29- ## Build & Run
30+ ## Quick Start
3031
3132### Prerequisites
3233
@@ -35,12 +36,22 @@ Make sure you have the following dependencies installed on your system:
3536- [ CMake ≥ 4.0.0] ( https://cmake.org/ )
3637- [ C++23] ( https://en.cppreference.com/w/cpp/23 )
3738
38- ### UNIX ( Linux, MacOS )
39+ ### Build (UNIX: Linux, macOS )
3940
4041``` bash
41- ./scripts/unix/build.sh release
42+ cmake -S . -G " Ninja" -B cmake-build-release -DCMAKE_BUILD_TYPE=Release
43+ cmake --build cmake-build-release --config Release
4244```
4345
46+ ### Build (Windows)
47+
48+ ``` powershell
49+ cmake -S . -G "Visual Studio 18 2026" -A "x64" -B cmake-build-release -DCMAKE_BUILD_TYPE=Release
50+ cmake --build cmake-build-release --config Release
51+ ```
52+
53+ ### Run
54+
4455``` bash
4556./cmake-build-release/bin/cae -h
4657Usage: cae [options]
@@ -51,35 +62,47 @@ Options:
5162 -c, --config < path> Specify JSON configuration file
5263```
5364
54- ### Windows
65+ ## Documentation
5566
56- ``` powershell
57- cmake -S . -G "Visual Studio 18 2026" -A "x64" -B cmake-build-release -DCMAKE_BUILD_TYPE=Release
58- cmake --build cmake-build-release --config Release
59- ```
67+ - [ Online Doxygen documentation] ( https://bobis33.github.io/Cross-API-Engine/ ) : Full engine architecture, APIs and design rationale.
68+ - [ Modules] ( https://github.com/bobis33/Cross-API-Engine/blob/main/modules/README.md ) : Overview of available modules and their responsibilities.
69+ - [ Plugins] ( https://github.com/bobis33/Cross-API-Engine/blob/main/plugins/README.md ) : Plugin system and how to create new runtime modules.
6070
61- ``` bash
62- cmake-build-release\b in\c ae.exe -h
63- Usage: cae.exe [options]
71+ ## Development
6472
65- Options:
66- -h, --help Show this help message
67- -v, --version Show version information
68- -c, --config < path> Specify JSON configuration file
73+ This section targets engine developers and contributors.
74+
75+ ### CMake Build options
76+
77+ - ` CAE_STRICT_WARNINGS ` (default: ` OFF ` ): Enable strict warning level.
78+ - ` CAE_ENABLE_SANITIZERS ` (default: ` OFF ` ): Enable address and undefined sanitizers.
79+ - ` CAE_ENABLE_LTO ` (default: ` OFF ` ): Enable LTO on final targets.
80+ - ` CAE_BUILD_TESTS ` (default: ` OFF ` ): Enable building unit tests.
81+ - ` CAE_CLANG_TIDY ` (default: ` OFF ` ): Enable clang tidy usage.
82+ - ` CAE_CLANG_FORMAT ` (default: ` OFF ` ): Enable clang format usage.
83+ - ` CAE_BUILD_DOC ` (default: ` OFF ` ): Enable building doxygen documentation.
84+
85+ ### Testing
86+
87+ Unit tests are based on [ Google Test] ( https://github.com/google/googletest ) .
88+
89+ Use the ` CAE_BUILD_TESTS ` option.
90+
91+ ``` bash
92+ ./cmake-build-release/bin/cae-tests
6993```
7094
71- ## External Libraries
95+ ### Build Doxygen documentation
7296
73- - [ Doxygen Awesome CSS] ( https://github.com/jothepro/doxygen-awesome-css ) : A custom CSS theme for Doxygen documentation.
74- - [ Google Test] ( https://github.com/google/googletest ) : A testing framework for C++.
75- - [ nlohmann-json] ( https://github.com/nlohmann/json ) : A JSON library for C++.
97+ documentation is generated using [ Doxygen] ( https://www.doxygen.nl/ ) .
7698
77- ## Documentation
99+ Use the ` CAE_BUILD_DOC ` option.
78100
79- - [ Modules] ( https://github.com/bobis33/Cross-API-Engine/blob/main/modules/README.md ) : Overview of available modules and their functionalities.
80- - [ Plugins] ( https://github.com/bobis33/Cross-API-Engine/blob/main/plugins/README.md ) : Information on available plugins and how to create new ones.
101+ ## Third-party libraries
81102
82- Visit the [ Doxygen documentation] ( https://bobis33.github.io/Cross-API-Engine/ ) for detailed information on architecture, modules, and usage.
103+ - [ Doxygen Awesome CSS] ( https://github.com/jothepro/doxygen-awesome-css ) : A custom CSS theme for Doxygen documentation.
104+ - [ Google Test] ( https://github.com/google/googletest ) : A testing framework for C++.
105+ - [ nlohmann-json] ( https://github.com/nlohmann/json ) : A JSON library for C++.
83106
84107## Contributing
85108
0 commit comments