Microsoft Game Dev Blog

Twitter icon

Variable Rate Compute Shaders on Xbox Series X|S

VariableRateComputeShadersBlogImage.jpg

Today we are pleased to present a talk from Martin Fuller, Principal Graphics Engineer at Microsoft's Advanced Technology Group.

The talk is on Variable Rate Compute Shaders (VRCS) with a focus on Xbox Series consoles. A basic understanding of Variable Rate Shading is assumed. We provide details of an early variable rate compute shader implementation that shipped with Gears5. We then present a new algorithm than can halve deferred lighting time by exploiting the duplication of g-buffer values, and with only a very small overhead, particularly on Xbox Series consoles. We compute whether to light 1,2,3 or 4 pixels per 2x2 pixel block for the required quality level per screen tile, and perfectly respecting triangle coverage. This same technique is applicable to any deferred or post process pass, including: SSAO, SSGI, SSR, fog, clouds, atmospheric scattering & etc.. Perhaps most significantly, VRCS can be used to reduce the number of rays required to ray trace various graphical effects with minimal or zero perceptible quality loss.

View this talk here on YouTube.

Registered Xbox developers can download the accompany sample code. This sample achieves a ~50% reduction in the time taken for ray marched shadows and atmospheric scattering in a deferred lighting pass.

-

To stay up to date with all things game development from Microsoft, check out the official Microsoft Game Development Blog

From the Microsoft Game Dev blog

Xbox Launches “Project Amplify”

Article // Sep 23, 2022

The project support black youth interested in gaming industry careers.

Pathfinding: Communication across disciplines is vital

Article // Sep 23, 2022

Learn how Naoko Takamoto navigated her career from contract musician to QA Lead to Senior Producer.

Register now for Xbox Discovery Day – Atlanta on Sept. 23

Article // Sep 16, 2022

Calling all aspiring and independent game developers who want to learn more about ID@Xbox program.