c83561c0fa
- Add preview.png of the new sphere (with render-to-texture + post-processing). - Update scenes description and usage. - Minor .gitignore tweaks.
52 lines
929 B
Markdown
52 lines
929 B
Markdown
# cuber
|
|
|
|
`cuber` is an OpenGL 3D renderer with multiple scenes.
|
|
|
|

|
|
|
|
## Requirements
|
|
|
|
- CMake 3.21+
|
|
- Ninja
|
|
- C++23 compiler
|
|
|
|
All dependencies (fmt, GLFW, GLAD, asio, GLM, stb) are fetched
|
|
automatically via CMake FetchContent.
|
|
|
|
## Development
|
|
|
|
**Configure**:
|
|
|
|
```sh
|
|
cmake -S . -B build -GNinja
|
|
```
|
|
|
|
**Build**:
|
|
|
|
```sh
|
|
ninja -C build
|
|
```
|
|
|
|
**Run**:
|
|
|
|
```sh
|
|
./build/cuber
|
|
```
|
|
|
|
## Usage
|
|
|
|
```
|
|
--duration <seconds> Auto-terminate after N seconds (for testing/CI)
|
|
--scene <cube|sphere> Select initial scene (default: cube)
|
|
--screenshot Render one frame, save screenshot, and exit
|
|
S key Take screenshot (saved as screenshot.png)
|
|
1/2 key Switch between cube/sphere scene
|
|
Q key Quit
|
|
```
|
|
|
|
## Scenes
|
|
|
|
- **cube** — spinning colored cube with per-face colors
|
|
- **sphere** — cube-to-sphere mapped mesh with per-face colors and
|
|
diffuse lighting
|