Skip to content

Latest commit

 

History

193 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is a toy project, that I used to learn basics of graphics programming and vulkan.
Project is a mess, because as I was trying and learning new stuff, some parts were added, updated and replaced, while other were written once at the start of the journey and used without any change.
Lots of stuff can be improved and fixed, features can be added, but before that some parts need to be rewritten from ground up.

Win64 binaries can be downloaded from actions.

Libraries and tools

Technologies

SDL2 window.

Vulkan 1.2 renderer with primitive render graph.

Bindless ui system, everything is being drawn in one draw call. Compute shaders are being used to build vertex/index buffers and to sort ui parts by their z index. Different materials being read and compiled into one shader at runtime. Data used by different materials is being stored using arena allocator with free list.

SimpleMath library created using c# source generators.

Screenshots

Fully functional shader graph system. Example shader adapted from
Shader graph example Ui is built using my own retained mode system. Ui example

Parallax voxel raymarching Voxels example

Basic deferred shading pipeline Deferred example Debug view (positions/material/normals/shaded) Deferred debug example

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages