Graphics Programming weekly - Issue 270 - January 15th, 2023

AMD RDNA™ 3 Instruction Set Architecture (ISA) reference guide is now available

  • the new AMD hardware guide for RDNA3 has been released
  • covers the shader execution model, the various wave execution models
  • as well as how the shader core interacts with the memory hierarchy

Approximate projected bounds

  • the article shows techniques implement conservative techniques to project bounding boxes and spheres into screen-space
  • these techniques are optimized for use in culling use cases as it affects the meaning of near-z clipping
  • presents trade-offs between the techniques in terms of computational cost and culling efficiency

Use.GPU Goes Trad

  • the article describes how the Use.GPU level of abstraction is continuing to evolve
  • presents how scene management can be natively expressed as part of the same pass-based architecture
  • shows how the same high-level logic allows switching between deferred and forward rendering easily
  • additionally discusses strange limitations in the graphics APIs that make switching work between texture formats, pixel shaders, and compute shaders more difficult


Graphics Engineer (m/f/x)

Darmstadt/Germany (partly remote possible)

YOU are looking to revolutionize the world of 3D in industrial environments and enjoy working in a highly innovative team?

Develop next-gen rendering technology, create high-performance pipelines and write complex real-time shaders. We are guaranteed to have interesting topics for YOU!

Tangent Spaces and Diamond Encoding

  • the article provides an overview of Tangen Space Encodings
  • covers how to use Octahedral Encoding and further compress it with Tangent Angle
  • from there, develops the suggested Diamond Encoding technique that extends the Octahedral approach into the tangent angle space
  • additionally provides a brief section on rethinking how tangent space encoding might be better expressed on a mesh(let) level on modern hardware

Optimize Your Graphics with RenderDoc Meta Fork

  • the article presents the Meta Quest exclusive features of the RenderDoc fork
  • the extensions allow the visualization of the tiled-based hardware binning into screen tiles and how they are executed
  • allows drawing call tracing to gather the latency of draw calls
  • additionally allows the collection of hardware statistics of shaders through KHR_pipeline_executable_properties

An Introduction to Vulkan: A Full Day Tutorial

  • during the Vulkanised 2023 conference in Munich, a full-day tutorial will take place
  • this post explains the target audience of the course and the associated price

Water Wave Simulation

  • the article aims to develop an intuition for FFT (Fast Fourier Transform) and how it’s underlying the math of waves
  • provides a large number of interactive examples to experiment with the effects of different parameters
  • contains a high-level introduction to complex numbers and how they relate to rotation and scaling

Random thoughts after moving from GLSL to HLSL

  • the author describes the personal experience with GLSL and HLSL gained through moving AnKi 3D between the shading languages
  • mentions why HLSL seems like a better bet for the long-term future
  • also mentions shortcomings of using HLSL when developing Vulkan applications

Min/Max Buffer Precision Improvement

  • the blog post explains how to improve the precision when encoding min-max per tile
  • the author suggests storing only one as an absolute value and a delta to reconstruct the other

How to accelerate AI applications on RDNA 3 using WMMA

  • the article covers how Wave Matrix Multiply Accumulate (WMMA)
  • presents how to use the intrinsics available in the HIP framework to accelerate the matrix operations typically found in machine learning work

Thanks to Peter Kohaut for support of this series.

Would you like to see your name here too? Become a Patreon of this series.