Conservative rasterization in Vulkan

I have added a new example to my open source C++ Vulkan examples that demonstrates the basic use of conservative rasterization using the VK_EXT_conservative_rasterization extension. This has been missing from Vulkan some time now (while other APIs already offer this feature) but has recently been added and is already support by at least NVIDIA.

Conservative rasterization changes the way fragments are generated, and enabling over estimation generates fragments for every pixel touched instead of only pixels that are fully covered.

Without conservative rasterization:

Conservative rasterization enabled (over estimate):

This technique has multiple use-cases with the most prominent one being voxelization, e.g. as a base for global illumination.

For details see this article on conservative rasterization by NVIDIA.