Shade - WebGPU graphics

Another demo
image

A few minor improvements:

  1. TAA filtering speed improved, overall perf up ~20%
  2. TAA color clamp modified slightly, giving better stability with less ghosting. Basically exploiting perceptual weights of YCoCg space
  3. SSR combine stage improved, making colors more vivid and closer to being physically accurate
  4. Fixed a few minor shading bugs
  5. Integrated infinite far plane
  6. Improved hashed alpha performance by ~20-40% depending on the hardware, skewing more towards bigger gains on the lower end
  7. Separated background velocity calculations for TAA, which makes it rock-solid now, previously it would smear ever-so-slightly under motion.
  8. Integrated STBN into the engine

I realized that I’ve been putting out demos of various things that weren’t very representative of what people are actually doing, so I hope this will be more useful.

The cool thing here is that there is 0 configuration. All the demo does is load the GLTF for Sponza and places the camera, that’s it. Everything else is automatic, from shadows to post-process.

One more thing, I tried a whole bunch of techniques while going through some SIGGRAPH papers from the past, and decided to try EON (Energy-compensated Oren-Nayar) diffuse brdf, here are the results:

And here’s the Burley

Burley is darker, especially at glancing angles, check out the green curtain in the bottom left of the screen.

I like EON, but without introducing more parameters like fuzz (sheen) or subsurface term - I feel Burley is better, so I’m keeping it for now.

4 Likes