Graphics Programming Weekly 449


A Texture Lookup Approach to Bézier Curve Evaluation on the GPU

  • presents a texture-based method for evaluating Bezier curves by leveraging hardware samplers
  • extends the idea beyond curves to surfaces, volumes, and related spline families
  • compares accuracy and performance against shader-polynomial evaluation


Understanding Light in Computer Graphics | Taha Torabpour

  • conversation on lighting and shadow techniques based around it being a series of informed trade-offs
  • contrasts physically based path tracing with real-time approximations, while walking through the technique developments
  • explains practical shadow artifacts such as acne and Peter Panning, and discusses mitigation strategies
  • additionally presents learning resources for aspiring graphics programmers


LunarG Releases Vulkan SDK 1.4.357.0

  • highlights updates on Apple platforms, including Vulkan 1.4 feature exposure and performance improvements
  • adds validation and tooling upgrades such as scoped GPU-assisted validation, GPU Dump, and support for 13 new Vulkan extensions


Occlusion-Point Reuse for Ray-Traced Ambient Occlusion and Shadow

  • introduces an occlusion-point reuse framework for ray-traced ambient occlusion and area-light shadows
  • reformulates estimators in occluder space and combines neighboring samples with multiple-importance-sampling


SIGGRAPH 2026 Links

  • curated link collection for SIGGRAPH 2026
  • aggregates key external resources, including Real-Time Live, Vulkan and neural shading course pages, and research project links


[video] Warp-Level Culling for Efficient Blending in 3D Gaussian Splatting

  • presents warp-level culling for 3D Gaussian Splatting by mapping thread warps to 4x8 subtiles and collaboratively rejecting non-contributing splats
  • combines sub-tile culling with tuned batch sizes and shared-memory optimizations


[video] neural.slang: A Standard Module for Inline Neural Networks in Shaders

  • introduces neural.slang as a standard Slang module for running tiny neural-network evaluations inline in shaders
  • shows shared logic across CUDA, Vulkan, and Metal via packed subgroup matrix-vector techniques
  • includes benchmarks against CUDA kernels and ML frameworks


[video] Warnock: Harnessing GPU Geometry Amplification for Vector Graphics

  • introduces Waro, a 2D vector graphics library that uses tessellation and mesh-shader pipelines
  • uses a compact baked path representation so that the fill policy details can be resolved efficiently at runtime
  • details a homogeneous path-link/control-point layout and an uber-shader workflow (including stencil-based winding evaluation)


Should you normalize RGB values by 255 or 256?

  • examines the common 8-bit normalization choices x/255 versus (x+0.5)/256 through quantization behavior and error analysis
  • explains why dividing by 255 remains the correct default for processing images and preserving expected conventions
  • notes that the 256-based variant can be useful in tightly controlled encode/decode pipelines, but mixing models leads to avoidable bias


Opacity Micromaps: Smarter Shadows for the Real World

  • presents an introduction to opacity micromaps (VK_KHR_opacity_micromap) as a way to accelerate ray-traced shadows for alpha-tested geometry
  • describes pre-baking per-microtriangle opacity states into acceleration structures to reduce expensive any-hit shader invocations
  • outlines a tutorial path covering the shadowing problem, micromap formats, and integration into a sample Vulkan application    


Thanks to Nia Bickford for support of this series.


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