- explains how to create a layering parallax effect to simulate the inside of a marble using ray marching
- presents how memory, object lifetime and command buffers are managed
- resource lifetime is bound to a frame context
- frame context tracks which resources can be deleted once the frame has been consumed
- shows the Cooperative Matrix extension for Vulkan
- the extension enables matrix multiplications to be computed across a subgroup
- enables better shader optimizations and allows the use of tensor cores on Turing GPUs
- using a Forward+ rendering pipeline and raytracing for shadows
- presents a frame breakdown of the main rendering passes
- acceleration structure for skinned objects is updated via UAV writes from a vertex shader
- shows the different spaces that are typically involved in 3D rendering
- how to transform between the different spaces
- visually shows the effect of the transformations
- series on rendering of volumetric clouds
- shows how to sample the sky lighting contribution
- using a sampling scheme that places more samples in the bright sections of the sky
- Flax engine now fully supports a Vulkan backend
- better performance than the D3D12 implementation
- D3D12 is starting to allow GPU drivers to implement shader optimization in a background thread
- provides an API to control the driver behavior
- presents how the snow simulation has been implemented and how it was optimized for Intel GPUs
- supports dynamic melting and build up of snow
- tesselation stage is used to generate the snow mesh
- presents the shader binding model used by granite
- user binds resources to sets and bind points on a per-resource basis
- Vulkan descriptor set management is not exposed to the user
Thanks to Nathan Reed for support of this series.
Would you like to see your name here too? Become a Patreon of this series.