Bamboo is a lightweight simulation engine that supports high-fidelity graphics rendering, and will mainly focus on AIGC and cloud rendering technologies in the future. Bamboo uses vulkan as the only graphics/computing api, and is written in C++17.
- UE-like Editor
- Flexible panel docking
- Static mesh rendering
- Skeletal mesh rendering
- Asset drag-drop importing
- Asset drag-drop placing
- Pixel-perfect picking and outline highlighting
- 3D translation/rotation/scale gizmos
- Reflection and serialization system
- Physically-Based Rendering
- Deferred and forward mixing rendering paths
- Multiple light types(Directional/Sky/Point/Spot)
- Shadow rendering for every light type
- Postprocessing(Color Grading)
Supported Platforms
- Windows
- Linux(WIP)
- MacOS(TODO)
Prerequites
- Git.
- CMake. Version 3.20.0 or later is required.
- Vulkan Sdk. Verison 1.3 or later is prefered.
Step 1. Clone the sources and create a build directory.
git clone https://github.com/Code-Guy/Bamboo.git
cd Bamboo
mkdir build && cd build
Step 2. Use CMake to generate project file using any desired generator.
cmake -G "Visual Studio 17 Win64" -S . -B build
Step 3. Finally, you can use any IDE according to you selected generator, but you can also just build straight from CMake.
cmake --build build --config Release
All external libraries' source codes have been integrated into this repo, so there is no need to clone those libraries manually:)