HN.zip

Real-time PathTracing with global illumination in WebGL

98 points by tobr - 9 comments
viktorcode [3 hidden]5 mins ago
So nice to see another person being that enthusiastic about ray tracing! I didn't do a comparable level of work in this field, but as a hobby this fascinates me a lot!

One common misconception is that ray tracing is computationally prohibitive. It was, but no longer so; it's a target within our reach, especially so when there's GPU with hardware acceleration for ray casting.

Many games use ray tracing for partial scene processing, and of course they all work in real time. My favourite example is Metro Exodus with ray traced global illumination, which works on last gen graphics hardware pretty well. Not all games use the technology efficiently, but the trend is already obvious: with accessible real time ray tracing rendering the scene will become a much easier task.

P.S. I used "ray tracing" when more accurately I should have used "path tracing", but I prefer to use a single term to encompass the whole technology with all its variants.

ivanjermakov [3 hidden]5 mins ago
I recently wrote one in WebGPU, too

https://github.com/ivanjermakov/moonlight

ttul [3 hidden]5 mins ago
Reminds me of the old POV-Ray stuff I did in the early-1990s. But... in realtime and in my browser. WTF!
pixelpoet [3 hidden]5 mins ago
Pretty great demos, and they do indeed run well on my phone; I suspected it might be an AI thing because of the tautology in the title, but it seems hand written.

Particularly cool is the recreation of that classic scene from Kajiya's rendering equation paper, with the glass spheres and caustics.

modeless [3 hidden]5 mins ago
This is neat. In the demos I would suggest making mouse/finger drag orbit the camera around the scene instead of panning. Panning can be done by a 2D image transformation so it doesn't show off the 3D nature of the renderer.
dahart [3 hidden]5 mins ago
I second the vote for orbit cam! Add double-click to choose the orbit point, and add a zoom control that is proportional to distance to orbit point, and it suddenly gets insanely easy to navigate the scene and find good views. It’s too hard to control using translate and look-around angles.

The demos I tried so far have translate and not pan, and those are fully 3d…

flowerbreeze [3 hidden]5 mins ago
It's very interesting and I'm also impressed that most of the demoes run on my potato-phone.
pjmlp [3 hidden]5 mins ago
Lots of cool demos.
LoganDark [3 hidden]5 mins ago
Huh. I've seen space/shift-or-ctrl, Z/X, and Q/E for up/down movement... but never Q/Z