/Canella

A Vulkan game engine WIP

Primary LanguageC++

Canella

Experiments on crafting a 3D vulkan game engine. (Work In Progress)

Feature List

  • Task and mesh shader implementation and early backface culling. Mesh is decomposed of a collection of small portions called meshlets. The task shader filter the meshes by using backface culling

    IMAGE ALT TEXT

  • Frustum Culling in compute Shaders

    IMAGE ALT TEXT

  • ImGui Implementation

  • GPU Driven Indirect Drawing.

  • Graphic setup serialization (Creation of Renderpass and Pipelines) in json FORMAT.

  • RenderGraph to automatically create the render passes and write attachments (WORK IN PROGRESS).

Features To be done

  • Virtualized Texture Access.
  • Vertex Skinning and IK Rig
  • Implement more render nodes (PBR path with indirect diffuse, HBAO+,Bloom etc...)
  • Multhread command buffer generation
  • and the list will go on forever...

Dependencies

Build

clone the project

git clone https://github.com/icarolelis1/Canella.git
mkdir build
cd build
cmake ..

Currently not building on Linux.