Graphics Programming 423


Thoughts on No Graphics API

  • discusses Sebastian Aaltonen’s “No Graphics API” article
  • examines which graphics-specific functions might be stripped and the implications for multi-device/multi-process setups
  • highlights practical concerns (write-combining memory pitfalls, deadlock avoidance, and 32-bit compatibility)


Shader To Human

  • introduces Shader2Human, a lightweight HLSL/GLSL library that exposes debugging tools directly from shaders
  • provides macros and helpers to make shader diagnostics and rapid iteration easier without heavy capture tooling
  • slides walk through usage patterns and examples for faster shader development


GPU Memory Fundamentals

  • tutorial on GPU memory concepts, covers movement between VRAM and compute units, and the role of memory speed, interface width and bandwidth
  • explains memory-bound vs compute-bound operations via arithmetic intensity and practical tinygrad benchmarks, with concrete optimization guidelines
  • includes hands-on examples and timing tips for accurate GPU benchmarking and optimization


Practically Utilizing Neural Networks in CPU-based Production Rendering

  • demonstrates how lightweight neural networks can be integrated into CPU-based production path tracers to improve memory, speed, and image quality under low-latency constraints
  • discusses practical inference considerations on CPU and the trade-offs when bringing ML into offline rendering pipelines


Sample Decorrelation in BRDF Preconvolution for Image Based Lighting

  • investigates a seam artifact in HDRP’s LD preconvolution caused by reusing identical sample sequences per pixel combined with local-frame singularities at cube-face boundaries
  • suggests practical fixes and recommends decorrelation as a pragmatic patch


Efficiently sorting gigabytes: the Deferred Merge Sort

  • presents a low-memory approach for globally sorting mostly-ordered event streams
  • leverages data patterns (nearly sorted streams, local disorder) to prefetch and hide I/O, making global sorting cheaper
  • discusses comparisons to k-way lazy merge and proposes a hybrid JIT-sort fallback


Graphics Programming Conference 2025 - slides released

  • GPC 2025 archive with session descriptions and slides from a wide range of real-time graphics talks
  • inluding Shader2Human (shader debugging), Blender Cycles architecture, real-time path tracing, neural shading, profiling & platform optimization talks


[video] I'm making a game engine based on dynamic signed distance fields (SDFs)

  • showcases an SDF-based engine for high-fidelity, non-destructive world edits
  • covers architecture & optimizations:
  • discusses ray-marching performance issues, physics/collision integration, terrain as SDF and practical trade-offs versus triangle meshes


Indirect Rendering // Vulkan For Beginners #27

  • practical tutorial on implementing indirect rendering in Vulkan, covering vertex/index/uniform buffer offsets, indirect buffers, and vkCmdDrawIndirect
  • demonstrates a new pipeline class and shows how to enable indirect rendering


[video] Coding Adventure: Analyzing Audio

  • walkthrough of programmatic audio analysis: techniques for computing FFTs, spectrograms and extracting features from audio signals
  • includes code examples and visualizations to illustrate frequency vs time behaviour and practical tips for real-time analysis


Thanks to Eric Haines for support of this series.


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