- the article presents how ordering mesh data can influence rendering performance
- compares different algorithms developed for this purpose
- the primary focus is on how to train these algorithms using machine learning techniques
- analyzes the results of different approaches and presents results
![](/img/posts/graphics-programming-weekly-116/vcachetuner.png)
- the article shows how to enable AMD FreeSync using D3D12 and Vulkan
- presents how to use the library to encode color information into the desired HDR display format
![](/img/posts/graphics-programming-weekly-116/freesync.png)
- Vulkan 1.2 has been released
- this release promotes 23 extensions into core Vulkan
- including extensions such as imageless_framebuffer, timeline semaphores, and better support for HLSL shaders
![](/img/posts/graphics-programming-weekly-116/Vulkan.png)
- Microsoft open-sourced two layers to help to port to D3D12
- D3D12 Translation Layer helps mapping from D3D11 style APIs to D3D12 style
- Resource binding, renaming, sub-allocation, pooling, and deferred destruction
- Batching and threading
- Residency management
- D3D11On12 is implemented on top of the previous layer and contains the D3D11 specific aspects
![](/img/posts/graphics-programming-weekly-116/d3d12.jpg)
- the paper examines k-d trees and bounding volume hierarchies
- comparing the approaches with varying cone sizes
![](/img/posts/graphics-programming-weekly-116/cone_tracing.png)
- the article discusses the new timeline semaphore synchronization API included in Vulkan 1.2
- superset VkSemaphore and VkFence allows synchronization between CPU and GPU using a single primitive
- additionally provides support for wait-before-signal submission and multiple waits per signal
![](/img/posts/graphics-programming-weekly-116/TimelineSemaphore.png)
- the code snippet shows how to screenspace extends of a sphere from view space
- an optimized version of Clipped Perspective-Projected 3D Sphere
![](/img/posts/graphics-programming-weekly-116/sphere_viewspace.png)
- the article presents how Grassmann (Geometric) Algebra extends four-dimensional homogeneous coordinates into a larger algebraic structure
![](/img/posts/graphics-programming-weekly-116/ProjectiveGeometricAlgebra.png)
- the Unity tutorial shows to implement the stylized lava effect discussed in the previous article using Shader Graph
![](/img/posts/graphics-programming-weekly-116/lava_shader_graph.png)
- the author presents his opinions about how a rendering abstraction layer should be designed
- additionally offers his thoughts on Render Graphs, Meta Command Buffers, and meta shader languages
![](/img/posts/graphics-programming-weekly-116/rendering_abstractions.jpg)
- presents an improved precision method for normal reconstruction from depth buffers
- the technique uses 5 depth samples in each direction
![](/img/posts/graphics-programming-weekly-116/normal-reconstruction-decals.png)
- the article presents a few approaches to skybox rendering
- introduces how to use the min/max depth of the D3D12 viewport to force skybox to a max depth
- the comments present other approaches
![](/img/posts/graphics-programming-weekly-116/viewport_clamping.png)
- the paper introduces a technique for improving the computation time required for lightmap baking
- based on guided sampling and minimum variance-based estimator combination
- the method has a fixed memory footprint and is independent of scene complexity
![](/img/posts/graphics-programming-weekly-116/ray_guiding.png)
- the article shows how to use Node bindings to enable RTX support when using WebGPU
- provides a brief overview of the DXR API and presents how to use the API to set up the pipeline and render an animated mesh
![](/img/posts/graphics-programming-weekly-116/webgpu_rtx.png)
- the article presents the shader nodes from Unity ShaderGraph system
- explains how to use the nodes, what options are available and how to combine them
![](/img/posts/graphics-programming-weekly-116/uv4.png)
- the article presents code and explains the logic behind correct dithering patterns that preserve the brightness
![](/img/posts/graphics-programming-weekly-116/srgb_dithering.png)
Thanks to Jasper Bekkers for support of this series.
Would you like to see your name here too? Become a Patreon of this series.