Graphics Programming weekly - Issue 120 — February 23, 2020


sokol_gfx.h Backend Tour

  • a 3 part series that provides an overview of the backend implementations of sokol_gfx for the OpenGL, D3D11 and Metal implementation


Bringing HLSL Ray Tracing to Vulkan

  • Nvidia added support to the DirectX Shader Compiler (DXR) to generate SPIR-V that is valid to be used with the Vulkan SPV_NV_ray_tracing extension
  • the article shows an example and explains how concepts are mapped to SPIR-V


Ways to speedup pixel shader execution

  • the article presents an overview of techniques to optimize pixel shaders
  • starting with techniques to make sure that pixel shaders are only run if necessary and offers several methods to reduce the cost of pixel shaders afterward


Reverse engineering the rendering of The Witcher 3, part 16 - shooting stars

  • the author presents how shooting stars in the Witcher 3 are implemented
  • show the vertex and pixel shader implementation


Sampling Analytic Participating Media

  • the in-depth article presents the physical models and approximations of participating media (such as fog, water)
  • presents constant, linear and exponential fog implementations
  • extends these solutions to express atmospheres and provides approximations for numerical approaches


Data Driven Rendering: Pipelines

  • the newest part in article series about defining a data-driven rendering pipeline
  • focusing on the definition of a render pipeline
  • a simplified version of a RenderGraph/FrameGraph system
  • build around render targets as central primitive


Shader Graph Conversion : Eyeball Shader

  • the Unity tutorial explains how to implement a stylized Eyeball Shader using Unity Shader Graph


Rendering Particles with Compute Shaders

  • presents an approach to render particle effects using compute shaders
  • the primary focus is optimization for tiny, pixel-sized particles that are additively blended
  • lacking support of atomic on floats requires float->int->float conversions in the shader and how this influences the final implementation


LunarG Vulkan Ecosystem & SDK Survey Results

  • the results from the Vulkan survey have been released
  • contains comments, and what are the next steps that are taken to address the feedback


Unity Toy Path Tracer

  • the article presents how to implement a Path Tracer using the Unity Data-Oriented Technology Stack (DOTS)


Handling Device Orientation Efficiently in Vulkan With Pre-Rotation

  • the article describes how to deal with device orientation changes in a Vulkan application efficiently
  • describes how to query the information from the system, recreate Vulkan objects and necessary modifications to shader code


Thanks to Cort Stratton for support of this series.


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