- review of problems with classical APIs (OpenGL) and motivations for the creation of WebGPU
- presentation about Dawn, WebGPU implementation from Google
- splits into render passes that insert resource transitions between passes automatically
- how numerical fences are implemented (Monotonically increasing values indicate a timestamp in GPU execution history)
- considerations for implementations using cross-process communication
- part 2 of Vulkan raytracing series
- extends the application with multiple 3D meshes, texturing, simple shading, shadows, reflections, and ice shading model
- development of a new rendering framework for transmittance for participating media that enables non-exponential media types to be represented
- archived by splitting transmittance into 4 transport functions
- discussion of how to express this new model so that it is intuitive to use and still creates physically correct results
- walkthrough of the implementation of a rain material using the Unreal Engine 4 shader graph
- a short summary of what spherical harmonics are and what they are used for
- proposes a sanity check for SH projection code, by passing a function with a constant of 1, should result in a first coefficient close to 2√π
- article series about procedural routines for color generation
- talks about some techniques to generate procedural color variations
- explains HSB color space and the effect of changing each component
- convert from RYB hues to HSB hues
- generation of monochrome color schemes
- how the difference in colors influences human perception
- a sample that explains how to use Metal to generate render commands on the GPU
- implements GPU culling only to issue rendering commands for visible meshes and remove empty draws
- the final command buffer submission is controlled from the CPU
- explains a new model for sampling visible normals of the GGX distribution
- summarizes the properties of GGX and how sampling a 2D projection of the truncated ellipsoid is equivalent to sampling the visible normals of the GGX distribution
- the method is more precise and quicker than previous methods
- provides a GLSL implementation
- twitter thread that discusses what a BRDF is and how they are formed
- links to sources with more in-depth information
- the walkthrough explains how to use GLSL-reduce to simplify a GLSL shader and preserve certain conditions such as a crash or invalid output
- this is achieved with an interestingness test script
- the script expresses what is considered to be interesting, such as specific compiler crash, high memory usage, long compile time, etc
- presents the problem of bug slippage, this happens when a reduced shader generates a problem, but it’s not the same problem as in the original shader
- a tutorial explains how to implement ray traced shadows when using a signed distance field to represent the scene geometry using Unity
- interactive WebGL demo for the paper describing a technique to reduce firefly artifacts from path tracer outputs
If you are enjoying the series and getting value from it, please consider supporting this blog.
Support this blog