Graphics Programming weekly - Issue 75 — March 3, 2019

Missed the content for Feburary? Don’t worry. The summary is now availbale on my patreon:

Ray Tracing Gems - hybrid rendering for real-time ray tracing

  • the chapter describes the hybrid rendering pipeline used in the PICA PICA demo
  • uses a mix of rasterization and raytracing techniques to generate the final image
  • talks about opaque and transparent shadows, reflections, ambient occlusion, transparency, translucency, and GI techniques

Ray Tracing Gems

  • Ray Tracing Gems is now available as open access book
  • the whole book is available as single pdf, but individual chapters can be downloaded too

Adventures in Sampling Points on Triangles (Part 1)

  • presents a method to distribute sampling points within a triangle taking advantage of sub-triangles to guide the distribution
  • able to reduce variance in the test scene by 2.17x

SampleZoo - Simple implementations of sampling patterns, with objective tests to compare them

  • collection of different sampling patterns
  • explains the patterns and the characteristic of each
  • provides C++ implementations

Efficient Generation of Points that Satisfy Two-Dimensional Elementary Intervals

  • presents a new algorithm that allows to efficiently and incrementally generate stratified sample points

Shader Convertion Part 2 (Liquid, Triplanar, Waterfall)

  • shows how to implement a fluid like movement inside an object, tri-planar mapping and a animated waterfall shader using the Unity Shader Graph

Halftone Shading

  • shows how to implement halftone toon shading with Unity
  • a technique that uses a binary lighting style that is modified by sampling screenspace signed distance fields to customize the edge between lit and unlit area

Programming HDR monitor support in Direct3D

  • documents the experiments with HDR support using all 3 different hardware vendors
  • shows what HDR information is reported from DXGI and compares against manufacture APIs
  • all vendors seem to indicate very different information about the same monitor connected

Programming FreeSync 2 support in Direct3D

  • presents how FreeSync2 supports HDR and variable refresh rate
  • explains what variable refresh is and what is required to use it
  • FreeSync HDR allows the game to collect capabilities from the monitor to adjust the tone mapping accordingly
  • shows how to use the AMD library to create and request the device

How Magnum does GFX API enum mapping

  • shows the method used to abstract pixel formats between OpenGL and Vulkan using an external enum format
  • using C++ preprocessor to provide abstraction and testing support

SRP Batcher: Speed up your rendering!

  • explains the design of the new Unity batching system
  • designed to enable better matching in situations where many materials are used, but they are using a small number of shader variations

Thanks to Steven Cannavan @PedanticCoder for support of this series.

You would like to see your name here too? Become a Patreon of this series.