Graphics Programming weekly - Issue 26 — February 11, 2018

The Peak-Performance Analysis Method for Optimizing Any GPU Workload [wayback-archive]

  • how to use GPU counters to detect interactions between different hardware blocks
  • discussion of case studies
  • walkthrough of analysis, code examples to show optimizations and discussion of results

Pre-Multiplied Alpha [wayback-archive]

  • reduces color bleeding in alpha blending
  • can represent Additive, Alpha Blend, and Multiply blend modes
  • can vary the blend mode per-pixel, can be used to pre-combine effects

SRV handling in D3D12 - twitter thread [wayback-archive]

  • how to design for descriptor tables in D3D12
  • goal is to only set a few root constants to point to the correct data

Vulkan ASKs : Swapchain [wayback-archive]

  • proposed vulkan extensions to improve swapchain and present interactions

Profiling: Measurement and analysis [wayback-archive]

  • overview of profiler types
  • visualization of the memory layout and how it causes performance problems
  • how to detect cache misses with CodeXL

HLSLexplorer [wayback-archive]

  • small tool that takes HLSL code, passes it to the shader compiler and shows the d3d11 shader disassembler output
  • allows to select compiler flags and see the effects on the assembly
  • similar to Pyramid, allows to see the native GPU disassembly as well

A new microflake model with microscopic self-shadowing for accurate volume downsampling [wayback-archive]

  • technique to preserve anisotropic attenuation and self shadowing when downsampling volume representations
  • allows silhouettes of LODs to be better preserved

Exploring the limits of real time rendering

  • showcase of a photogrammetry nature scene render in UE4