Update, March 4th: Niran is continuing to experiment with shaders, and has posted an interesting snapshot taken under water.
NiranV Dean has always enjoyed a reputation for pushing the limits of the the viewer, first within his Niran’s Viewer, and more recently with his Black Dragon viewer.
A lot of the work he does builds on code developed by Tofu Buzzard – such as with his implementation of screen space reflections and, more recently, Godrays. This work, coupled with his own, has enabled him to earn a reputation for producing a viewer with rich graphical capabilities.
Now Niran is pushing the limits again, using both his one code and elements such a Tofu’s Godrays to bring something to Sl people have long wanted to see: volumetric lighting effects.
On Sunday, March 1st, he released a stunning video showing the work to date. When watching it, be aware that while the camera is moving, everything else is static, other than the grating in the ceiling of the room. When you’ve got that, note how the grating not only casts shadows on the floor, it actually breaks up the light falling through it, just as would happen in real life where light rays hit a solid object and are broken up by it.
“The original Godrays are from tofu,” Niran says of the work. “The problem was, they only worked on objects and terrain; they got cut off on the sky. So I’ve worked on that, and added some code to my viewer, which was really the first iteration of things we saw on my viewer [the updates with Godrays from 2014].
“Since then, I’ve been working on improved resolution and smoother Godrays, moving things to another shader, which brought it’s own problems. Most recently I’ve been moving to another shader for depth of field and improved shadows.”
Interest in the work Niran has been doing has been expressed by the Lab, and he will be offering it as a code contribution for them to consider, although he still has some further work to do.
The first of this is to introduce a global fading effect on the Godrays such that they appear to fade away as an observer looks away from the sun. The basic code is already there, but is disabled in the video, as Niran is still working on things. He hopes to be able to offer the fading effect as a toggle on / off option once the work has been completed.
“The other work still to be done is with particles,” he told me. “Since these Godrays are in the final depth of field shader, they also share the same problems. So, if I can move it into a separate shader on top of everything else, it should resolve the remaining issues, and everything should be good to go.
Of course, contributing code to the Lab doesn’t always mean adoption by the Lab; there can be many intervening factors that prevent the latter. However, Niran is quietly confident his work will be adopted. But if not, “well, there’s always my viewer with it!” he tells me with a wink and a smile.