Graphics Programming weekly - Issue 246 - July 31, 2022

[video] Compute Shaders || Lou Kramer || AMD

  • the presentation introduces compute-shaders, explaining the software and hardware concepts
  • expands upon the basis to explain execution patterns, memory, and cache hierarchies
  • texture reading/writing patterns as well as common mistakes

Introducing our brand new tool: Radeon™ Raytracing Analyzer 1.0

  • new tool from AMD to provide more insights into the performance of raytracing applications
  • show much memory is used, if redundant information is stored, all geometric axis aligned, etc
  • video presentation covering the information available is linked

Synchronizing Present Calls Between Applications on Distributed Systems with DirectX 12

  • the article presents an Nvidia API extension that allows multiple buffer swaps (between windows and applications) to be synchronized
  • shows the D3D12 API and discusses the usage, conditions for correct usage as well as limitations

Best Practices for Using NVIDIA RTX Ray Tracing (Updated)

  • Nvidia has updated the performance best practices for RTX usage
  • contains new recommendations enabled with shader model 6.6, updated guidelines for inline ray tracing
  • and many more minor updates across the categories

GPU Memory Pools in D3D12

  • the detailed article explains the different memory pools available and how they differ between different types
  • shows how D3D12 exposes the memory management
  • discussing strategy for texture and buffer uploads
  • presents performance numbers for CPU and GPU reads/writes and uploads to different memory types

A Rust shading language EDSL

  • the article discusses the Rust shades crate that allows writing Rust domain-specific language that can be used to generate GLSL code
  • explains the motivation, implementation as well as open issues
  • it additionally provides a comparison against other solutions

A better point light attenuation function

  • the article presents a derivation of a light attenuation function to separately control the maximum intensity and radius
  • function is designed to reach zero influence to be used with clustered shading

UVs and You

  • the article aimed at beginners explains how images are applied to 3D objects
  • presents what UV (Texture coordinates are) and how to visualize them
  • shows how to explore the relationship between mesh and UV coordinates from Unity shaders

GL_EXT_fragment_shader_barycentric: Wireframe

  • the article presents an overview of barycentric coordinates
  • shows that barycentric can be interpreted as a distance field
  • derives how to render wireframe line rendering from these distances

Adventures in Text Rendering: Kerning and Glyph Atlases

  • the article provides an overview of font rendering
  • looks at the different levels that cover glyph evaluation, line layouts, and antialiasing
  • presents rasterization constraints, how to cache glyphs for efficient rendering
  • additional covers how to deal with sub-pixel positioning

[video] Generation of simplified representations of the city, characters and vehicles for Cyberpunk 2077

  • the presentation video discusses the LOD generation used in Cyberpunk 2077 (3D models and materials)
  • discusses the different algorithms that were used for different types of models and materials
  • provides an overview of the pipeline and infrastructure integration

Adventures with deferred texturing in horizon forbidden west

  • slides for the GDC presentation talking about the deferred texturing solution has been released
  • summary in week 231

zig-gamedev project

  • a growing collection of graphics samples and libraries for the zig programming language
  • the provided samples cover how to use the released libraries

Thanks to [Michael Hazani] for support of this series.

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