- the final part of the series
- presents how different GPUs are able to overlap the workload between
- different async and graphics queues
- work on the same graphics queue
- presents how split barriers influence the overlap
- additionally presents the ability of Windows to preempt GPU work when multiple applications are sharing the same GPU
![testapp_overview1.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-66/testapp_overview1.png&key=1e05f74537d445c206e96a8deea3d002db88cf7c8e8aa8d892f969ad8ecaf317)
- slides for the fluid simulation used in Shadow of the Tomb Raider have been released
- the content of the talk was discussed last week in issue 65
![shadow_of_the_tomb_raider.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-66/shadow_of_the_tomb_raider.png&key=ea694304d63a3c1ad486c5036dadb6e5127d63a4a5c18ebdc48612bc542bfc9f)
- next part of the series about the development of a forward shading pipeline using the Unity scriptable render pipeline
- implements support for directional, point, and spotlights
- show how to interact with the Unity provided light culling system
![8-lights-per-object.jpg](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-66/8-lights-per-object.jpg&key=695287e0df501e123b865a81de33a95638a6f9bd8c4290859d6fe82554e5bf04)
- object based shading approach designed for VR rendering
- splits rendering into client and server operations
- the server calculates visible geometry and object space shading
- the results are stored into a shading atlas
- the client receives a preprocessed vertex stream and the shading atlas
- the visible geometry is rendered from a single vertex buffer and shading is applied from the information cached in the shader atlas
- presents the memory management technique and mip-level selection
![streaming_atlas.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-66/streaming_atlas.png&key=de64bb723667b0575f70b1342abbef14cef121d19e11328a93ebb37dc1955d97)
- user created index-page for the Apple Metal documentation
- contains links to samples, class documentation, best practices documents, tools and debugging helper
![apple_metal_logo.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-66/apple_metal_logo.png&key=d29cf7b52604571c6e5b684efaaa96bdbabf3455ac9faaa419456afbe6a30bb1)
- shows how to validate using image comparison and using a furnace test
- how to implement a plastic and glass BSDF
- make the ray tracer less biased through changes to the way the number of bounces is determined
![pathtracing.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-66/pathtracing.png&key=712b3638340f9396d12470f83aeeb68de58c551df2e4f9c0c44fe9cf408b5bf4)
- Khronos talks from Siggraph 2018 Asia
- talks about Vulkan
- memory management, subgroup operations and the design of a FrameGraph style engine architecture
- introduction to WebGL and overview of the latest updates to the GLTF format
![khronos_asia.jpg](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-66/khronos_asia.jpg&key=f9fa57b07b5c7c064362c370c15407f6a7ebf16812abe8c0d388bf43954e4b51)
- series of videos walking through the implementation of a software renderer written in multithreaded C++ using SIMD
- presenting the whole pipeline from vertex fetching, vertex processing, culling, projection, binning, rasterization, mipmapping and finally shading
![software_rasterizer_engine.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-66/software_rasterizer_engine.png&key=19224350edb147021d132a57d687e1266598fb7e032928f35fde57379ee318b3)
- explains why noise is significant in computer graphics and how to animate blue noise over time so that it retains its properties
![the-importance-of-good-noise.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-66/the-importance-of-good-noise.png&key=b0dba6682c99000e401ae3267a3c9ccf40bb807812e7798cd7ca8a855965a403)
- video summary of variable rate shading
- presents a few approaches that are used to drive shading rate selection
- what options are exposed in Wolfenstein 2 and how they influence performance and quality
![variable_rate_shading.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-66/variable_rate_shading.png&key=ac99e5745a76f4a9028f0a9017e9990bec822931bdec3895c8a4ca4c181f7f24)
- new encoding model for Ambient Highlight Direction (AHD) lightmaps that eliminate common interpolation artifacts
- and how to fit AHD from spherical harmonics data
![lightmap_encoding.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-66/lightmap_encoding.png&key=2983ae0883824f5e9109172a0565b2dc35a40c8e39e3b76ffbb25f425d9d34c1)
If you are enjoying the series and getting value from it, please consider supporting this blog.
Support this blog