Graphics Programming Weekly - Issue 391


Importance-Sampled Filter-Adapted Spatio-Temporal Sampling

  • JCGT paper presenting a technique for generating optimized samples with good spectral properties
  • presents the improved results for depth of field with complex bokeh shapes
  • shows how to calculate the samples and the effect on quality and performance


Reservoir Sampling

  • Clear explanation of reservoir sampling for selecting k random samples from data streams of unknown size
  • Uses interactive visualizations to demonstrate the algorithms and its behaviour
  • Additionally presents how the technique can be applied to a log processing service


Mipmap selection in too much detail

  • Comprehensive exploration of how GPUs select appropriate mipmap levels when sampling textures
  • Discusses linear filtering, anisotropic filtering, trilinear filtering, and mathematical foundations with visual comparisons
  • Many visual examples to visualize the equations discussed


Noise is Beautiful: Part 1: Procedural textures

  • open access book focusing on the foundations and applications of procedural noise for texture generation
  • Focuses on theory and implementation of algorithms that enable procedural texturing workflows
  • Demonstrates how basic primitives can be combined to create natural-looking textures for various applications


Neural Two-Level Monte Carlo Real-Time Rendering

  • The paper introduces a two-Level monte carlo estimator for global illumination(GI)
  • Discusses the Neural Incident Radiance Cache (NIRC) that uses a small neural network that is trained on-the-fly to learn incoming light from all directions


Understanding The Math Behind ReSTIR GI

  • Technical deep-dive explaining the mathematical foundations of ReSTIR GI for efficient real-time path tracing
  • Includes code snippets, visualizations, and mathematical derivations making the concepts more approachable
  • additionally clarifies the limitations of the technique


ReSTIR-Sampled Shadow Maps

  • The paper combines ReSTIR (Reservoir-based Spatio-Temporal Importance Resampling) with shadow mapping for complex lighting
  • the selection strategy generates shadow maps for lights with the strongest contributions to pixels in the current camera view
  • and falls back to imperfect shadow maps to provide low-resolution shadow approximations


Using Neural Networks for Geometric Representation

  • The article explores neural representations for 3D geometry
  • Discusses the Neural Intersection Function that allows BVH traversal to operate as part of the raytracing pipeline
  • Discusses the limitations and how Locally-Subdivided Neural Intersection Function can overcome these


Implicit UVs: Real-time semi-global parameterization of implicit surfaces

  • The paper presents a technique for creating UV mappings directly on implicit surfaces without traditional mesh parameterization
  • Uses local-uv fields that are smoothly blended to enable continuous parameterizations


Meshlets and Mesh Shaders

  • exploration of mesh shader implementation and performance benefits in modern graphics pipelines
  • Provides benchmarks with different meshlet/thread group configurations and code examples for amplification and mesh shaders
  • uses nvidia hardware counters to present the results of the various experiments


Boosting GPU Radix Sort performance: A memory-efficient extension to Onesweep with circular buffers

  • The blog post discusses GPU radix sort techniques
  • Starting with a classical radix sort implementation and an overview of the improved onesweep implementation
  • Explains how this technique can be extended to work within a fixed memory footprint through the use of a ring buffer for look-back storage


Conquering FidelityFX FSR4 – Enabling the pretty pixels on Linux through maniacal persistence

  • Blog post describes the journey implementing AMD’s FidelityFX Super Resolution 4 (FSR4) on Linux
  • Presents how DXIL expresses instruction extensions
  • Discusses steps required to support 8-bit float and wave matrix multiply accumulate(WMMA) required for the compute shaders


Minimal GPU video decoding sample for Vulkan and DX12

  • GitHub repository with minimal implementation examples for hardware-accelerated video decoding with Vulkan and DX12 for H264 videos
  • Shows how to decode video streams directly on the GPU
  • Demonstrates interfacing with platform-specific video APIs and synchronizing between decoder and graphics pipeline
  • source code contains many comments to explain the pitfalls and undocumented behaviours


Assassin's Creed Shadows

  • GDC presentation from Ubisoft’s rendering team on advanced graphics techniques in Assassin’s Creed Shadows
  • Discusses the GPU accessible scene representation (database), GPU driven rendering pipeline and new micropolygon rasterization
  • Overview of the GI implementation, raytracing abstraction and deep-dive into the implementation
  • Lastly discusses the deferred weather system


Thanks to Graham Wihlidal for support of this series.


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