Breaking down barriers – part 2: Synchronizing GPU threads [wayback-archive]
- explanations of barrier behaviour on a simplified GPU model
- how split barriers help to increase GPU utilization
Color: From Hexcodes to Eyeballs [wayback-archive]
- in-depth introduction into light theory, human perception, color spaces and gamma correction
One Mesh To Rule Them All [wayback-archive]
- same assets used on PC/mobile/consoles
- limits the LODs based on the target platform
- creates clusters of nearby objects, generate proxy geometry from these clusters
Improved Lerp Smoothing [wayback-archive]
- classical lerp is frame rate dependent, hard to tweak
- improved version that solves these problems: value = lerp(target, value, exp2(-rate*deltaTime))
- how to convert from classical lerp
Normals and the Inverse Transpose, Part 1: Grassmann Algebra [wayback-archive]
- introduction into grassmann algebra
- explanation of vector, bivector, trivector and wedge product
- derivation of a more geometric understanding about the behaviour under transformation
Combining Analytic Direct Illumination and Stochastic Shadows [wayback-archive]
- split into unshadowed illumination and illumination-weighted shadow
- unshadowed areas are noise free, only shadowed areas use stochastic ray tracing and need denoising
- discussions of denoising techniques
Memory Mapping on Windows (including Benchmark) [wayback-archive]
- overview of memory mapping on windows
- benchmark of different techniques
- using MEM_RESET allows the OS to lazily unmap pages
Rendering in the DirectX Shader Compiler Editor [wayback-archive]
- tool to allow compilation of shaders, inspection of AST and disassembly
- renderView allows execution of draw/dispatch, could be useful for prototyping
Viewing Optimization Passes in the DirectX Shader Compiler Editor [wayback-archive]
- allows display of optimisation passes
- change setup of used passes, ordering and parameters
Barycentrics [wayback-archive]
- demo application that shows 5 ways to get Barycentric coordinates
- large variation in performance between the different approaches
Ray Tracing with the DirectX Ray Tracing API (DXR) [wayback-archive]
- concerns about a blackbox raytracing API and the quality of drivers
Vulkan bindless extensions [wayback-archive]
- descriptors can be updated after they are bound to a command buffer
- relax requirement so that descriptors that are not accessed can be invalid
- allow variable size bindings in descriptor set layout
- GL_EXT_nonuniform_qualifier allows indexing into resource arrays which differ within the same draw call
GDC Retrospective and Additional Thoughts on Real-Time Raytracing [wayback-archive]
- quick overview about the content of the SEED raytracing presentation at GDC
- sees the future to be about trade-offs between noise, ghosting and performance
- allows comparison against ground truth
- allows researchers to implement techniques using a common API
- library that provides a C reflection API for SPIR-V shader bytecode
Why every gfx/CV/robotics programmer should love SymPy (Part 1) [wayback-archive]
- 2 case studies of how to use SymPy
Daily Pathtracer Part 5: Metal GPU! [wayback-archive]
- experience of porting the pathtracer to metal with performance numbers and problems encountered
(Demoscene) Revision 2018 [wayback-archive]
- videos of the demos shown at revision 2018