Graphics Programming weekly - Issue 226 - March 13, 2022


Fast, GPU friendly, antialiasing downsampling filter

  • the article present how to derive a downsampling filter that uses eight bilinear samples
  • shows the process how to create the desired response and optimize the weights
  • includes a shadertoy implementation


Optimizing Oklab gradients

  • the article presents an overview of sRGB, Linear, and Oklab gradient interpolation
  • shows how to optimize the linear and Oklab calculations to get a lot closer in terms of performance compared to direct sRGB interpolation


Abstracting the graphics api for a toy renderer

  • the article discusses the authors’ decision for a home renderer abstraction layer
  • focusing on ease-of-use for experimentation over performance


Bindless rendering — Setup

  • the article presents the implementation of a bindless binding model using D3D12 and Vulkan
  • discusses the decisions, trade-offset as well (API) implementation-specific details
  • code examples are provided in Rust


A Better Approach to SDF Decomposition

  • the article presents a compiler approach that takes an SDF representation and generates shaders for cheaper execution on parts of the mesh
  • lists several recommendations to consider when implementing
  • additionally provides a few use cases for the SDF Evaluator


Stochastic Light Culling for Single Scattering in Participating Media

  • the paper extends the ideas of Stochastic Light Culling to compute single scattering in a homogeneous media
  • presents how combining reservoir sampling with the introduced technique can improve performance


Multi-Resolution Geometric Representation using Bounding Volume Hierarchy for Ray Tracing

  • the paper introduces a technique to lower the cost of ray tracing by using approximated geometry for shadow rays
  • additionally proposes a stochastic material sampling for material blending
  • presents how to combine the techniques in a path-tracer implementation


Mali-G710: a developer overview

  • the article presents hardware and shader compiler improvements for the new Malig G710 GPU
  • provides details into how the improvements compared to previous generations
  • additionally provides updated best-practices for best performance


[RFC] Adding HLSL and DirectX support to Clang & LLVM

  • the forum post presents the proposal to integrate HLSL and DXIL support into clang/LLVM
  • discussion presents insights into the tradeoffs in the compiler backend and difficulty with GPU architectures


WebGPU — All of the cores, none of the canvas

  • the article provides an introduction to WebGPU for compute shader workloads
  • starts from the basics and walks through all steps required to implement a simple 2D ball physics simulation
  • shows how to upload readback data from the GPU


AMD at GDC 2022

  • the page contains information and links to all the talks that AMD will present at GDC22
  • lists what new tools and libraries are going to be announced
  • number of talks will be freely accessible on GPUOpen


Thanks to Robert Wallis for support of this series.


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