BJTU Game Engine, for short
- Overview
- Water Reflection (using Screen Space Reflection)
- Cloud (using Ray Marching)
- Soft Shadow (using VSM)
- Simple Global Illumination (using RSM)
- C++ Compiler
- GCC >= 13
- Or, MSVC (Visual Studio >= 2022)
- CMake >= 3.19
- Git >= 2.1
- Python >= 3.9
-
Clone the project and enter the directory
git clone https://github.com/YXHXianYu/BJTU-Game-Engine.git cd BJTU-Game-Engine
-
Run the following command to build
python ./scripts/glsl-preprocessor/glsl-preprocessor.py cmake . -B build cmake --build build -j16
The binary
BJTU-Game-Engine
should be generated into thebin
folder. -
Run the binary.
Or, if you have just installed, step 2~3 can be simply done by running:
just
Check
justfile
or usejust -l
for more information.
- Movement
- Use
WASD
for moving forward, backward, left, and right, respectively. - Use
QE
for moving up and down.
- Use
- Camera
- Hold the right mouse button and drag to adjust the camera view.
- Window
- Press
Escape
andEnter
to exit the BJTU-Game-Engine
- Press
- Render
- Press
Shift + K
to control whether to render the character - Press
Shift + J
to control whether to render the block - Press
Shift + L
to control whether to render the light mesh - Press
Shift + O
to control whether to use the orthogonal projection - Press
N
to switch water mode - Press
M
to switch FXAA mode - Press
,
to switch shadow mode - Press
R/T
to control the position of the sun - Press
Z/X
to control the thickness of the cloud - Press
C
to control whether to enable Reflective Shadow Map (Default Off)- You can also press
R/T
to observe the effect of RSM
- You can also press
- Press
BJTU Game Engine is open source software licensed as MIT.