Skip to content

A modern cross-platform game engine via vulkan and c++17.

License

Notifications You must be signed in to change notification settings

Code-Guy/Bamboo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bamboo

What is Bamboo

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. 1

2

3

Features

  • 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)

How to build

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

External libraries

All external libraries' source codes have been integrated into this repo, so there is no need to clone those libraries manually:)