rtarun9 / voxel-engine

WIP voxel engine with GPU culling, Indirect rendering, Multi-threaded async copy queue chunk loading system.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

voxel-engine

A simple voxel engine made for learning about voxels and advanced GPU / CPU optimization techniques. Uses C++, HLSL and D3D12.

Features

  • Bindless rendering (SM 6.6)
  • Reverse Z
  • Multi-threaded, async copy queue chunk loading system
  • Indirect rendering
  • GPU Culling

Gallery

Link : Click here, or on the Image below!

Youtube link

Building

  • This project uses CMake as a build system, and all third party libs are setup using CMake's FetchContent().
  • There is a custom script that can be used to setup DirectX Shader Compiler (DXC) and the Agility SDK.
  • After cloning the project, build the project using CMake :
1. Run the setup_dxc_and_agility_sdk.bat file,

2.
cmake -S . -B build 
cmake --build build --config release

Controls

  • WASD -> Move camera.
  • Arrow keys -> Modify camera orientation.
  • Escape -> Exit editor.

About

WIP voxel engine with GPU culling, Indirect rendering, Multi-threaded async copy queue chunk loading system.

License:Apache License 2.0


Languages

Language:C++ 92.4%Language:HLSL 5.2%Language:CMake 1.8%Language:Batchfile 0.7%