Graphics Programming weekly - Issue 121 — March 1, 2020


Writing an efficient Vulkan renderer

  • copy of an article that was published in GPU Zen 2, updated for changes introduced with Vulkan 1.1 and 1.2
  • covering memory management, Descriptor sets, command buffers, pipeline barriers, render passes and pipeline management


Ray Tracing Essentials Part 2: Rasterization versus Ray Tracing

  • video comparing rasterization and ray-tracing algorithm
  • analyzing the strengths and weaknesses of both techniques and how they complement each other


A Survey of Temporal Antialiasing Techniques

  • the paper presents an overview of Temporal Antialiasing (TAA) techniques, the history, different implementation techniques
  • follows up with a presentation of open challenges and discussion of possibilities for improvements


Compact PBR texture packing and blending experiment with Shader Graph

  • presents findings from compressing PBR material information into a single texture
  • developed for terrain-like materials
  • shows a comparison of memory usage and performance improvements


Vulkan Mobile Best Practices: Frequently Asked Questions - Part 1

  • A FAQ for Vulkan best practices guide by ARM
  • swap chain acquisition, image transitions, device lost debugging, and transient attachments


[video] Two Minute Papers - The Story of Light

  • the 7-min video provides a walk through the history of light transport research
  • showing numerous techniques, how multi importance sampling can be used to combine multiple techniques
  • closes with the presentation of the “Unifying points, beams, and paths in volumetric light transport simulation” (UPBP) paper


fast trisect in GLSL

  • the article presents an approximation to the GLSL trisect function
  • trisect splits an angle into three equal parts, playing the same role as square root in quadratics


Basic Skeletal Animation with Geometric Algebra

  • the tutorial shows how to implement a skeletal animation system using Geometric Algebra (GA)
  • additionally introduces the required GA concepts along the way


Packing UVs for deferred materials

  • the article presents how to pack UV and gradients (ddx, ddy) into 32-bit gbuffer channels
  • this is used for deferred materials where the results of texture samples are not stored in the gbuffer


Sprite Stencil Overlay Breakdown (Forward Renderer)

  • the Unity tutorial shows how to implement a checkerboard pattern if a 2D player is behind another object
  • this is achieved using the stencil buffer


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.