This is my playground for learning mesh shader pipelines applied to a voxel engine.
As of right it's just a mess, so if you came here looking for a nice example, you won't have much luck yet.
- Model the voxels with a Z-Order Curve (Morton encoding) Octree
- Do some culling on the object shader
- Decide on the actual rendering techniques and style. Per voxel or full path traced? Radiance Cascade maybe?
- Decouple world updates from renderer and improve input
- There will be no temporal amortization.
- There will be no upscaling tricks (unless we can ensure certain level of quality).
- No hardware raytracing will be used.
- Voxel Compression
- Metal by Example
- Some Metal examples https://github.com/chaoticbob/GraphicsExperiments/blob/main/projects/geometry/113_mesh_shader_instancing_metal/113_mesh_shader_instancing_metal.cpp
- Blog on Mesh Shaders, mostly for NVidia and AMD https://timur.hu/blog/2022/mesh-and-task-shaders
- Advanced Mesh Shaders | Martin Fuller | DirectX Developer Day
- Modern Renedering Introduction
- https://dubiousconst282.github.io/2024/10/03/voxel-ray-tracing/
- UV-free Texturing using Sparse Voxel DAGs
- Grid Based Visibility
- Voxel Tracing
- The Beauty of Bresenham's Algorithm
- Interactive Indirect Illumination Using Voxel Cone Tracing