- the article presents the different meaning of the term gamma in different color contexts
- suggest to always use a piece-wise sRGB function
![Gamma-2.2_sRGB_CCTFs.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-104/Gamma-2.2_sRGB_CCTFs.png&key=01b9641e522edc3f453a9bb3dfc134c858c1e5221b2f9dfcf7b314757c7388c0)
- presents an overview of the difference between static and dynamic branching
- dynamic is a lot more expensive of PowerVR hardware
- shows examples of problematic cases with dynamic branching
- presents an extension that can be used to make the dynamic branch a lot more performant if all threads agree on a condition
![PowerVR.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-104/PowerVR.png&key=e8ec225737c73d424801622afc8440cfe8016023059c2b73c63b1be9047c0a00)
- introduction of marching cube pre-pass stage reduces the mesh shader example GPU time by 33% to 50%
![Metaballs2.jpg](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-104/Metaballs2.jpg&key=95820ece214d8d095d6f617ae116f6e37970a7ac4aca6b0306eba449210f8683)
- collection of tweets related to VFX, shaders, and game art
![technically_art_template_40.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-104/technically_art_template_40.png&key=4eff72df356b82b051df12af5b8944ba6a9e5eb53b3b828aa05e85e125ca3430)
- the author presents his solution on how to implement painting onto textures using unity
- intersects mouse position with meshes, converting into UV space to be able to apply painting information using signed distance fields
![TextureSpacePainting.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-104/TextureSpacePainting.png&key=bfbb8b290aee4f593ce9ecf5156470980092af5a23b9f68a4570433aea527fec)
- the article presents the D3D12 resource state promotion and decay rules related to the common resource state
- mentions the AssertResourceState debug API that can be used to validate resource state promotion/decay behavior
- explains the ExecuteCommandLists behavior concerning resource states
![d3d12_logo.jpg](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-104/d3d12_logo.jpg&key=52549da429fc4f10264aab0dbaf979c47c47463a9cf16de438de8e5846c401af)
- the article presents how the author took the CPU implementation of Ray Tracing in a Weekend and converted it to run on the GPU using a GLSL implementation
![ray_tracing_motion_blur.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-104/ray_tracing_motion_blur.png&key=c84a00972bfb36fa97896736636cee0695f32e17027ba386ddb482159bd6f767)
- a brief presentation by Embark Studios showing RLSL, a subset of rust compiled to SPIR-V
- experimental stage
- showing how/what it is currently implemented, vision for the future
- presents examples of how shaders are implemented
- integration into the rust ecosystem
![RLSL.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-104/RLSL.png&key=70a20d6e968ed425d5adc0402ee8407bc183c6e80f6ba29957e754e544b8dad4)
Thanks to Steven Cannavan for support of this series.
Would you like to see your name here too? Become a Patreon of this series.