- explanation of partial derivates in pixels shader, (ddx, ddy in HLSL or dFdx, dFdy in OpenGL)
- the rate of change for variables in a 2x2 pixel grid
- how they are calculated, how they can be used to calculate face normals from world space positions
- how branches interact with derivative calculations
![shader_derivative_functions.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-47/shader_derivative_functions.png&key=4901b5adb6cbaf99fc744e2f72d67fe6b4ae22ebfd26c6fd3b4739e08f43219c)
- explanation of SIMD execution details for GCN
- discussing latency, throughput, and scheduling
- introduction of instructions that allow multiple SIMD lanes to exchange information
- extra requirements for pixel shaders
![pixel_crosstalk.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-47/pixel_crosstalk.png&key=bc2dff4b17163f5f6075e4267a69068fce2f4835f3a1df8aea95006afb7ae19e)
- a technique to rotate vectors on the GPU using only integer math
- aims to take advantage of packed operations and scalar integer operations
![rotation.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-47/rotation.png&key=c9648472fd2ede7108d74aa52dc3a1cafd3ccaba4afe1fcd840405a3c91265a6)
- Colin Barré-Brisebois is looking for feedback and open problems in real time raytracing
- this will influence the HPG 2018 keynote
![rt1.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-47/rt1.png&key=c7c4e5e82ed8331dc0953a3a5d2ed98ff1ba4482ce11630eaf3bc075b2a494a7)
- how to calculate the bounding box for quadratic and cubic Bezier splines analytically
![gfx01.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-47/gfx01.png&key=04649118c64a7021ba1bf7fe738fd071a22225e3943d96aa1f91d52e260ad10d)
- changing the color parts of a character at runtime using a mask texture
- detailed visual explanation of why this works for fixed colors but causes an issue when giving the option to blend between two colors
- using premultiplied colors removes the artifacts
![team_color.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-47/team_color.png&key=d17ecd2225f759287766e321c487e99467ef87b0df4291fed6835f449357c51d)
- explanation of how blending HDR values into an SDR render target behaves regarding clipping into the [0,1] range
- shows how using non-premultiplied HDR values results in incorrect results and how this can be fixed by the use of premultiplied alpha colors
![scenery.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-47/scenery.png&key=d7c23fd07574d923850da227ae02046c63ce636d682f1cf747b3c2c412dda89a)
- tutorial how to write a Metal app for iOS
- end results is a spinning, constant color teapot
- deals with loading models, handling vertex data, shaders, constants and drawing
![modern_1_1.jpg](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-47/modern_1_1.jpg&key=4ca36e72fd227c1823ec250d7607517d3fcb4bea81ab3eaa61dc8166f23ee354)
- showcase of small rendering demos that showcase volumetric rendering effects
![sss_01.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-47/sss_01.png&key=8bac5a204103d7c0bde0f79d0392b187f062366287fdf7292a64b7153580ac71)
- explanation of dark and stormy, cloudy skybox shader for unity
- source code and example assets are available
![dark_and_stormy.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-47/dark_and_stormy.png&key=2cc4b4d87a0add44dd474469a79c558941be47150045a3ee7bb8320a73b963fc)
- a technique to generate quadrilateral meshes from triangulated meshes
- won the Best Paper Award at Symposium on Geometry Processing 2018
- source code available
![quadriflow.jpg](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-47/quadriflow.jpg&key=363460841dadef082ef312be2b398b058a5b9bc26773915a80cabb10ac0b1d62)
- a library that aims to provide a thin abstraction layer on top of OpenGL, D3D11, D3D12, Vulkan, and Metal
![LLGL_Logo.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-47/LLGL_Logo.png&key=cbfb6d83825b70fd44a289e82b420f4919246d0f2dc7ea452f319573cd2e1944)
- GLSL implementation as a starting point for a temporal antialiasing solution
- bibliography of the Real-Time Rendering 4th edition
- 1978 references