Jump to content
  • Advertisement
  • entries
  • comments
  • views

Graphics Programming weekly - Issue 65 — December 2, 2018

Sign in to follow this  


  • 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

  • a single slide-deck that will evolve and serve as a single reference point for information about the SEED Halcyon engine
  • the content was discussed in issue 63 61 of this graphics programming weekly series

  • 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

Read more

Sign in to follow this  


Recommended Comments

There are no comments to display.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!