Graphics Programming Weekly - Issue 403


Quadric-Based Silhouette Sampling for Differentiable Rendering

  • presents an improved technique for silhouette sampling in physically based differentiable rendering
  • introduces new rejection test methods using bounding boxes in dual space and dual quadrics
  • achieves significant variance reduction compared to previous edge sampling approaches


Perfecting anti-aliasing on signed distance functions

  • explains techniques for implementing anti-aliasing with signed distance functions (SDFs)
  • compares linear, smoothstep, and smootherstep transitions for both pixel-wise AA and blur effects
  • demonstrates how to use numerical derivatives with fwidth() to maintain consistent AA regardless of perspective
  • additionally presents the effect of color space choices


[video] Integrating ImGui with Vulkan: Step-by-Step Guide

  • Video showing detailed implementation of Dear ImGui into a Vulkan graphics engine
  • covers setup process including descriptor management, render pass integration, and input handling
  • presents how to use the system to allow parameter adjustments


Our Workflow with Blender and Godot

  • details the Studio’s Blender-based asset pipeline using Godot
  • explains their DCC-centric approach using glTF as the exchange format with collection exports for asset management
  • discusses custom extension code that handles automated export/import workflow and proper asset separation


SIGGRAPH - OpenUSD Day

  • SIGGRAPH 2025 will feature a full day dedicated to OpenUSD sessions and hands-on labs
  • For the first time, NVIDIA will offer OpenUSD certification in person (free for attendees)
  • Sessions will explore how leading companies are leveraging OpenUSD for applications in simulation, robotics, and Industrial AI.


Debugging AMD-Specific Issues with Driver Experiments Tool

  • Introduces the Driver Experiments feature in the Radeon Developer Panel for debugging GPU issues
  • explains how to use the “Force NonUniformResourceIndex” experiment to detect missing shader qualifiers
  • details the experiments that allow disabling of color and depth compression to identify render target barrier issues


gpu conditionals - 2025

  • explains why ternary operators and if statements don’t cause branch instructions for simple value selection
  • demonstrates through disassembly that these operations use conditional moves rather than actual branching


Fun with MeshBlend!

  • proposes a screen-space approach similar to SSAO that samples and blends material properties from nearby surfaces
  • demonstrates how understanding the core concept of ideas can lead to innovative solutions


Steerable Perlin Noise

  • presents a modification to classic Perlin noise, allowing directional control over the pattern generation
  • includes implementation details with ShaderToy examples showing practical applications
  • demonstrates how the technique can be used for creating oriented textures and controlled flow patterns


Toroidally Progressive Stratified Sampling in 1D

  • introduces a technique that combines stratified sampling with golden ratio sequence ordering
  • creates sampling patterns that maintain good quality at any sample count and across sequence boundaries
  • compares error convergence with standard white noise


[video] Preproduction Optimization Steps - Game Optimization - Episode 3

  • Third episode in a game optimization series focusing on strategic performance planning during pre-production
  • discusses establishing performance budgets across the target platforms
  • How to develop optimization strategies before production
  • explains how to identify potential bottlenecks early through prototyping and setting clear technical constraints


Thanks to Aras Pranckevičius for support of this series.


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