Graphics Programming weekly - Issue 59 — October 21, 2018


Physically Based Rendering, online

  • the complete 3rd edition of Physically Based Rendering is now online for free
  • the post explains the history of the book and decisions that led to making the book available for free
  • authors can be supported on https://www.patreon.com/pbrbook


From screen space to voxel space

  • summarizes voxel ray tracing implementation, memory and performance optimizations
  • show the different artifacts that can be encountered and their solutions


Adding multiple bounces

  • next part in the Metal ray tracer series that adds support for multiple bounces to simulate global illumination
  • implements importance sampling for diffuse BSDF


Improving material system

  • extending the material system of the Metal raytracer so that multiple materials can be expressed and importance sampled correctly
  • changes sampling heuristic to support multiple importance sampling. This enables both rough and mirror-like surfaces

Multilayer Light Simulations: More Beautiful Images, Faster

  • 2-minute video summary of the “Position-Free Monte Carlo Simulation for Arbitrary Layered BSDFs” paper


Flavors of Sampling in Ray Tracing

  • overview of the strengths and weaknesses of different sampling techniques in ray tracing
  • presents links to papers that present methods that are aimed at creating better-stratified sampling results


niagara: Future of rasterization

  • stream that adds support for rendering meshes using Nvidia mesh shader extensions


niagara: Optimizing mesh rendering

  • during the stream, the mesh shader pipeline is optimized
  • performance parity with the classical rasterization pipeline is achieved without GPU culling


How to make a fake interior effect with unity using reflection probes

  • shows how to implement interior mapping using the Unity reflection probe system
  • explains how to set up the model and environment to generate the required probes and how to apply the reflections to the windows


Rust Mesh Optimizer

  • rust version of the meshoptimizer library is now available
  • the post explains how to setup Rust code to be able to compile, link and use existing C code from Rust


Global Illumination in Godot Engine @ Gamelab BCN 2018

  • the presentation explains how Global illumination has been implemented in the Godot engine
  • talking about GI probe generation, deterministic light baking and the interacting with the shading pipeline


How I Grow with Grass Shader

  • walkthrough of a Godot shader that uses particles to spawn vegetation meshes based on height map and feature (biomes) map data


Alpha blending using pre-multiplied alpha

  • a brief summary of the usage of premultiplied alpha using Vulkan
  • pre-multiplication is done in the pixel shader, no texture pre-processing is used


If you are enjoying the series and getting value from it, please consider supporting this blog.

Support this blog