Improved fragment/compute shading rates


I've got shading rates working correctly and are optimized with the raymarching compute shader as well as with the fragment shader again.  I also added additional shading rates for finer control over performance vs visual quality.

The only things that is left to be done with shading rates is to support shading rates correctly for GPUs / Vulkan drivers which don't support fragment shading rates.  That requires implementing in the compute shader a W by H color value fill into the gbuffer for ray hits with respective to shading rate at that screen coordinate.

Getting fog working again is next on my list.  That should be easy.  Then onto global illumination / dynamic lighting...



P.S.  Here's what the shading rates look like if fragment shading rates are disabled.  What you are seeing is the result of the raymarching compute shader using shading rates.  Each non-dark-blue pixel corresponds to a ray that was cast with respect to shading rates.  Click images to see higher resolution version.


Comments

Log in with itch.io to leave a comment.

How odd, why is that caused?

(1 edit)

My understanding is that it's due to incomplete Vulkan driver implementations.  I have an old laptop that has an Intel integrated (non-discrete) GPU and when my code requests the fragment shading rate extension with logical device creation, Vulkan reports that the extension is unsupported.

P.S.  Same laptop doesn't support GLSL uint64 nor float64.