@@ -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,66 +36,72 @@ 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-
40- ``` bash
41- ./scripts/unix/build.sh release
42- ```
39+ ### Build (UNIX: Linux, macOS)
4340
4441``` bash
45- ./cmake-build-release/bin/cae -h
46- Usage: cae [options]
47-
48- Options:
49- -h, --help Show this help message
50- -v, --version Show version information
51- -c, --config < path> Specify JSON configuration file
42+ cmake -S . -G " Ninja" -B cmake-build-release -DCMAKE_BUILD_TYPE=Release
43+ cmake --build cmake-build-release --config Release
5244```
5345
54- ### Windows
46+ ### Build ( Windows)
5547
5648``` powershell
5749cmake -S . -G "Visual Studio 18 2026" -A "x64" -B cmake-build-release -DCMAKE_BUILD_TYPE=Release
5850cmake --build cmake-build-release --config Release
5951```
6052
53+ ### Run
54+
6155``` bash
62- cmake-build-release\ b in\ c ae.exe -h
63- Usage: cae.exe [options]
56+ ./ cmake-build-release/ bin/ cae -h
57+ Usage: cae [options]
6458
6559Options:
6660 -h, --help Show this help message
6761 -v, --version Show version information
6862 -c, --config < path> Specify JSON configuration file
6963```
7064
71- ### CMake Build options
65+ ## Documentation
7266
73- - ` CAE_BUILD_TESTS ` (default: ` OFF ` ): Enable building unit tests.
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.
7470
75- ## Testing
71+ ## Development
7672
77- ```
78- ```
73+ This section targets engine developers and contributors.
7974
80- ## External Libraries
75+ ### CMake Build options
8176
82- - [ Doxygen Awesome CSS] ( https://github.com/jothepro/doxygen-awesome-css ) : A custom CSS theme for Doxygen documentation.
83- - [ Google Test] ( https://github.com/google/googletest ) : A testing framework for C++.
84- - [ nlohmann-json] ( https://github.com/nlohmann/json ) : A JSON library for C++.
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+ - ` BUILD_CAE_TESTS ` (default: ` OFF ` ): Enable building unit tests.
81+ - ` USE_CLANG_TIDY ` (default: ` OFF ` ): Enable clang tidy usage.
82+ - ` USE_CLANG_FORMAT ` (default: ` OFF ` ): Enable clang format usage.
83+ - ` BUILD_DOC ` (default: ` OFF ` ): Enable building doxygen documentation.
8584
86- ## Documentation
85+ ### Testing
8786
88- - [ Modules] ( https://github.com/bobis33/Cross-API-Engine/blob/main/modules/README.md ) : Overview of available modules and their functionalities.
89- - [ Plugins] ( https://github.com/bobis33/Cross-API-Engine/blob/main/plugins/README.md ) : Information on available plugins and how to create new ones.
87+ Unit tests are based on [ Google Test] ( https://github.com/google/googletest ) .
9088
91- Visit the [ Doxygen documentation] ( https://bobis33.github.io/Cross-API-Engine/ ) for detailed information on architecture, modules, and usage.
89+ ```
90+ ```
9291
93- ### Build documentation
92+ ### Build Doxygen documentation
93+
94+ documentation is generated using [ Doxygen] ( https://www.doxygen.nl/ ) .
9495
9596```
9697```
9798
99+ ## Third-party libraries
100+
101+ - [ Doxygen Awesome CSS] ( https://github.com/jothepro/doxygen-awesome-css ) : A custom CSS theme for Doxygen documentation.
102+ - [ Google Test] ( https://github.com/google/googletest ) : A testing framework for C++.
103+ - [ nlohmann-json] ( https://github.com/nlohmann/json ) : A JSON library for C++.
104+
98105## Contributing
99106
100107Want to contribute? See [ Contributing guidelines] ( https://github.com/bobis33/Cross-API-Engine/blob/main/CONTRIBUTING.md ) .
0 commit comments