Skip to content

Commit a28e027

Browse files
committed
Doc: improve readme structure and plugin readme
1 parent a5945d0 commit a28e027

2 files changed

Lines changed: 65 additions & 57 deletions

File tree

README.md

Lines changed: 37 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ Rather than focusing only on graphics API abstraction, the objective is to creat
1515
This 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
5749
cmake -S . -G "Visual Studio 18 2026" -A "x64" -B cmake-build-release -DCMAKE_BUILD_TYPE=Release
5850
cmake --build cmake-build-release --config Release
5951
```
6052

53+
### Run
54+
6155
```bash
62-
cmake-build-release\bin\cae.exe -h
63-
Usage: cae.exe [options]
56+
./cmake-build-release/bin/cae -h
57+
Usage: cae [options]
6458

6559
Options:
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

100107
Want to contribute? See [Contributing guidelines](https://github.com/bobis33/Cross-API-Engine/blob/main/CONTRIBUTING.md).

plugins/README.md

Lines changed: 28 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,31 @@
11
# Plugins
22

3-
| Type | Name | Status |
4-
|-----------------|-----------|--------|
5-
| Audio | ALSA ||
6-
| Audio | Core ||
7-
| Audio | OpenAL ||
8-
| Audio | XAudio2 ||
9-
| Model | Assimp ||
10-
| Model | fastgltf ||
11-
| Network | Asio ||
12-
| Network | Posix ||
13-
| Network | WinSock ||
14-
| Physic | ||
15-
| Renderer | DirectX12 | |
16-
| Renderer | Metal ||
17-
| Renderer | OpenGL | 🚧 |
18-
| Renderer | Vulkan | |
19-
| Shader IR | SPIR-V | 🚧 |
20-
| Shader IR | DXC ||
21-
| Shader Frontend | GLSL | 🚧 |
22-
| Shader Frontend | HLSL ||
23-
| Shader Frontend | MSL ||
24-
| Shader Frontend | WGSL ||
25-
| UI | Imgui ||
26-
| Window | Cocoa ||
27-
| Window | GLFW ||
28-
| Window | Win32 ||
29-
| Window | X11 ||
3+
| Type | Name | Windows | Linux | MacOS | Status |
4+
|-----------------|-----------|---------|-------|-------|--------|
5+
| Audio | ALSA | ||||
6+
| Audio | Core | ||||
7+
| Audio | OpenAL | ||| |
8+
| Audio | XAudio2 | ||| |
9+
| Model | Assimp | ||| |
10+
| Model | fastgltf | ||| |
11+
| Network | Asio | ||| |
12+
| Network | Posix | || ||
13+
| Network | WinSock | ||| |
14+
| Physic | | | | | |
15+
| Renderer | DirectX12 | ||| 🚧 |
16+
| Renderer | Metal | ||||
17+
| Renderer | OpenGL | || 🚧 | 🚧 |
18+
| Renderer | Vulkan | ||| 🚧 |
19+
| Shader IR | SPIR-V | ||| 🚧 |
20+
| Shader IR | DXC | ||| |
21+
| Shader Frontend | GLSL | ||| 🚧 |
22+
| Shader Frontend | HLSL | | | | |
23+
| Shader Frontend | MSL | | | | |
24+
| Shader Frontend | WGSL | | | | |
25+
| UI | Imgui | ||| |
26+
| Window | Cocoa | ||||
27+
| Window | GLFW | ||||
28+
| Window | Win32 | ||||
29+
| Window | X11 | ||| |
3030

31+
**Legend:** ✅ fully supported, 🚧 work in progress / partial, ❌ not supported

0 commit comments

Comments
 (0)