Graphics Programming weekly - Issue 138 — June 28, 2020

Get to know Metal function pointers

  • the Metal shader API now supports function pointers
  • the talk provides an overview of the compilation models and performance considerations
  • function tables can be passed via argument buffers t the GPU

Scanline Effect

  • the Unity tutorial explains how to implement a moving scanline post-processing effect

[video] NVIDIA Nsight Feature Spotlight: GPU Trace

  • the video provides an overview of the D3D12 frame-level profiler
  • walkthrough of an example capture of Wolfenstein scene and uses it to explain how to use it to identify performance issues

Constant data in Vulkan

  • the article explains several different methods that can be used to manage shader constant data
  • provides a brief overview of each technique and compares performance on Mali GPUs

SHAD2: shaders, but more difficult

  • the article explains a method that stores shader instructions encoded into a texture and uses a runtime shader to interpret the data
  • shows an experiment what happens if the texture is filled with random information

The 31st Eurographics Symposium on Rendering

  • the program for the online conference taking place this week
  • all videos are available on youtube and linked from this program

Features that are coming to iOS and MacOS

  • a twitter thread that lists new features Metal API features and provides links to documentation for each topic
  • including Programmable Blending, Indirect Command Buffers for Compute and many more

[video] Rendering Roblox: Vulkan Optimisations on Imagination PowerVR GPUs (Presented by Imagination Technologies)

  • the GDC talk discusses the voxel-based lighting and shadow system
  • how to handle performance vs. quality tradeoffs in algorithms
  • uses MSAA to increase the effective resolution on shadow maps on higher-end devices
  • how to implement gaussian blur efficiently with async compute
  • presents shader optimizations for PowerVR hardware


Principal Software Engineer

(London but UK Remote Working also fine)

Foundry are looking for a seasoned software engineer specialising in Real-Time Rendering to join our existing team of rendering experts working on rendering technologies across our portfolio. We’re looking for a self-motivated developer with strong C++ and GPU graphics programming skills. Experience in software development lifecycle and knowledge of software engineering best practices are also required. As a Principal Software Engineer, you will help to ensure the quality, scalability, and extensibility of the code that we’re writing.

Graphics Study: Red Dead Redemption 2

  • the article presents a frame breakdown of the PC version of Red Dead Redemption 2
  • covering g-buffer breakdown, environment map filtering, shadow pipeline, and more supporting systems

NVIDIA Posts First DirectX 12 Ultimate Driver Set, Enables GPU Hardware Scheduling

  • NVidia driver update adds support for DXR 1.1, VRS Tier 2, mesh shaders and sampler feedback
  • additionally now supports Vulkan 1.2

Optimize Metal apps and games with GPU counters

  • a video from WWDC 20 provides an overview of the GPU pipeline, what hardware counters are available and how to use them understand application performance bottlenecks

Discover ray tracing with Metal

  • video from WWDC explains the basic building blocks of the Metal ray tracing API and how to support more complex materials

Creating Optimal Meshes for Ray Tracing

  • the article provides an overview of several problematic mesh characteristics that cause an issue for ray tracing and how to resolve them

Thanks to Cliff Owen for support of this series.

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