November 2021
Posted 3 years ago
attribute 'contenteditable' not allowedattribute 'blocktype' not allowed

One of the main things we were missing in S&Box was a form of real-time dynamic reflections.

Screenspace-based reflection techniques alone look terrible most of the time and I don't like them; they are expensive and we can have a better effect for cheaper.

I've implemented a system that uses an approximation of geometric primitives of the models for reflections.
attribute 'contenteditable' not allowedattribute 'blocktype' not allowed

This allows us to trace a ray on world space very cheaply and with a lot of quality, including having accurate rough reflections without any sort of temporal accumulation or shooting multiple rays per pixel.

This means reflections won't dissapear when the object is occluded from the screen or that it would run slowly or blurry on your old computer, there's plenty of optimizations to make sure the ray is only cast where needed.
attribute 'contenteditable' not allowedattribute 'blocktype' not allowedattribute 'title' not allowed
Our version of VRAD3 can already bake SDF information of the world so in the future might be interesting to use that information so level geometry can be reflected using the same techniques too.

Right now this is an experiment, you can enable it in your shaders by adding `D_HIGH_QUALITY_REFLECTIONS` as a combo or as a preprocessor.