Quake 2 Realtime GPU Pathtracing


This is a from-scratch GPU-based pathtracer created specifically for Quake 2. It has several optimisations which are only viable due to the typical characteristics of Quake 2 such as support for parallogram-shaped lightsources, BSP ray traversal, and special handling of sky 'surfaces' (portals). It doesn't officially have a name, but you can call it Raylgun.

Update Log

August 2017
  • Improved sampling with blue noise dithering and Halton sequence sample points.
  • Added TAA (temporal anti-aliasing) using raytracing to detect disocclusions, rather than colour history or G-buffer data.
  • Added support for moving lightsources attached to level objects such as elevators.
  • Added bump mapping, with bumpmaps generated on start-up from diffuse texture brightness.
  • Added Simple Reinhard tonemapping with exposure control, and a gamma correction parameter.
  • Added specular reflections of light sources and indirect lighting.
  • The player's own weapon no longer casts shadows on the level geometry (it can still receive shadows, and it still casts shadows on itself).
  • Fixed a significant slowdown caused by GL buffer usage flags, in relation to dynamic entity lights.
  • Added more console variables.
  • Fixed numerous minor bugs.
https://github.com/eddbiddulph/yquake2/tree/pathtracing
 
after completing Quake II remastered version today, I think I'd only play the ray traced version. It looks incredible and modern. If I had the love for Quake 2 like I have for Quake 1 I'd be completing the RTX version by now, but while I had the original game back in the day, I never truly got into it. However, when I played the RTX version it felt much better to me. At some point I got stuck and I stopped playing. In that sense, the remastered version, for those who didn't complete the original is much better 'cos you can use an indicator guiding you to where you must go next.
 
Back
Top