Just before Siggraph, Jacco Bikker released Lighthouse 2, his new real-time path tracing framework as open source on Github:
An old video of Sponza rendered with Lighthouse, showing off the real-time denoiser:
Lighthouse is still a work in progress, but given the fact that it handles real-time animation, offers state-of-the-art performance and is licensed under Apache 2.0, it may soon end up in professional 3D tools like Blender for fast, photorealistic previews of real-time animations. Next-gen game engine developers should also keep an eye on this.
If you haven't heard of Jacco Bikker before, he is the original author of the Brigade engine, which pioneered the use of real-time path tracing in games (way before Nvidia got interested) and was released as open source in 2010 (see https://raytracey.blogspot.com/2010/04/real-time-pathtracing-demo-shows-future.html). Brigade was a real trailblazer and showed off a glimpse of how photorealistic games could look like in a not so distant future. Brigade 2, its successor (and also developed by Jacco Bikker) was fully GPU based which pushed things to another level. I used to work a lot with Brigade and designed many tech demos with the engine for this blog (e.g. https://raytracey.blogspot.com/2013/03/real-time-path-traced-carmageddon.html and https://raytracey.blogspot.com/2013/10/brigade-3.html), so I was quite thrilled to read that Jacco had released a new path tracing engine which fully exploits OptiX and the new hardware accelerated ray tracing cores on Nvidia's Turing GPUs.
Lighthouse has a few unique feature
- Lighthouse uses Nvidia's OptiX framework, which provides state-of-the-art methods to build and traverse BVH acceleration structures, including a built-in "top level BVH" which allows for real-time animated scenes with thousands of individual meshes, practically for free.
- There are 3 manually optimised OptiX render cores:
- OptiX 5 and OptiX Prime for Maxwell and Pascal
- the new OptiX 7 for Volta and Turing
- OptiX 7 is much more low level than previous OptiX versions, creating more control for the developer, less overhead and a substantial performance boost on Turing GPUs compared to OptiX 5/6 (about 35%)
- A Turing GPU running Lighthouse 2 with OptiX 7 (with RTX support) is about 6x faster than a Pascal GPU running OptiX 5 for path tracing (you have to try it to believe it :-) )
- Lighthouse incorporates the new "blue noise" sampling method (https://eheitzresearch.wordpress.com/762-2/), which creates cleaner/less noisy looking images at low sample rates
- Lighthouse manages a full game scene graph with instances, camera, lights and materials, including the Disney BRDF (principled shader) and their parameters can be edited on-the-fly through a lightweight GUI
More in the Lighthouse 2 wiki: https://github.com/jbikker/lighthouse2/wiki
Some screenshots (rendered with Lighthouse's OptiX 7 core on a RTX 2060)
1024 real-time ray traced dragons |
2025 lego cars, spinning in real-time |
Lighthouse 2 material test scene |
A real-time raytraced Shelby Cobra |
An old video of Sponza rendered with Lighthouse, showing off the real-time denoiser:
Lighthouse is still a work in progress, but given the fact that it handles real-time animation, offers state-of-the-art performance and is licensed under Apache 2.0, it may soon end up in professional 3D tools like Blender for fast, photorealistic previews of real-time animations. Next-gen game engine developers should also keep an eye on this.
Stay tuned for more™ !
P.S. I may release some executable demos for people who can't compile Lighthouse on their machines.
P.S. I may release some executable demos for people who can't compile Lighthouse on their machines.