Volumetric lighting: soon for SL?

Blackdragon logoUpdate, March 11th: The capabilities described below are now available in Black Dragon, which I’ve overviewed here.

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.

20 thoughts on “Volumetric lighting: soon for SL?

  1. OMG kudos to Niran for kicking the viewer into producing even more graphical features. I hope this feature won’t take a huge hit to the viewers FPS. I was surprised how little the Materials feature did not slow the viewer. Shadows on the other hand has always been a dreadful hit on viewer performance, especially on the mac.


  2. Not only on a MAc, shadows does really cause a drop of fps but with a good vga and cpu, it is less noticeable, where i got more then 200 fps when without alm enabled, enabled i got 35 (alm plus shadows as it does not make sense to just enable alm without them) so i do run Sl always with alm on and shadows, as even if i go bellow 6 (sometimes while rezzing on some sims that is the max i reach) the beauty of what i see can not be replaced with the loss of the shadows.
    Can not wait to see it implemented by Linden Lab (if), cause let’s not run away from the truth, Niran’s ego made a lot of enemies among the tpv community, i fear that firestorm will never (is not enough to be the worst graphics viewer around, it also needs to be the most used, lol) use any from him unless LL uses it 1st.


    1. There’s always a risk that any contributed code may not be accepted by the Lab, and for a wide variety of reasons, so we will have to wait and see what happens on that score.

      As to code adoption anywhere, as with the Lab either accepting or refusing code on the basis of how well it find with their own aims, development path, etc., so to can any TPV opt to adopt or ignore code made available through the open-source community. Certainly, there is no reason for any viewer to reject well-written and workable code that doesn’t run the risk of breaking anything else, simply because of things previously said.


      1. I had Firestorm explicitly say no to anything i made (somewhere in their Jira if i remember right).

        Which is the reason the video description states that it will be soon near your favorite viewer (except Firestorm), because Firestorm would refuse it if they stay true to what they said. I’m sort of going to make that “except Firestorm” a running gag…

        Also “zzpearlbottom”, my ego made just the right enemies, those who do not see through my shenanigans do not deserve being friends anyway, remember that i choose my friends myself.


        1. I’m not getting involved in any feuds, but will say it was because of an indirect poke from a Firestorm team member that I saw the video.


          1. Probably Whirly, he reposted a comment on my video, at least someone at Firestorm seems to understand some fun.


              1. Yea, sorry mixed Whirly up with Kadah… not sure why i have to think of Kadah everytime…


  3. Don’t worry Niran, the last thing i know is to be called your friend,
    Still i didn’t regret using and helping a few, and supporting and advocating Nirans viewer, when it was the best, even if it cost me to be called a Niran’s lover by some, as i didn’t had any problems to stop using it, despite being the best viewer on graphics, as i was called by you and your “Friends” a Niran’s hater.
    The good sometimes don’t surpass the bad.


    1. You’re just an annoying exaggerating, over hyped wench ZZ. Sorry but it had to be said, i’ve watched you on several blogs now and every time you talked about Viewers you just combined everything that makes a fanboy/hater, it doesn’t matter which Viewer, it’s just annoying as hell, how about you just sit down and let people do their stuff without you commenting with your distorted opinions, isn’t it enough that i’m going around and bashing my opinion into peoples faces, you don’t have to do the same, it makes you not a single bit better.


      1. On that i will not disagree (annoying , exaggerating, over hyped wench.) even if i do think (i’m entitled to that at least) that i have the right to try if they are available to all to download) and comment on any viewer, my personal view, as a user, about its features, what i feel it is good, what i do think it does not ne to have for me and so on
        I know, any can compile and do their own personal viewer and if they do release it to others, we should be grateful, but unless the owner of the blog feels im trespassing on its Tos, be by being aggressive to another, incorrect use of language or other that does not fit, i’ll be all you said but will try to keep posting my experiences.
        Of yours viewers those ended long time ago, so one could even ask why i did post in 1st place on this topic.
        Cause despite my personal opinion regarding your ego and my refusal to ever try any of your builds i do feel that you have a gift for making viewers that visual do make Sl even more amazing.
        Yes, i should not even reply, but im a over hyped wench, after all.


  4. OK, I have a little more understanding of what’s going on with Godrays here. Now how to switch them on…? 😀 I’ve been digging around online and haven’t found anything (but I was daft and didn’t go searching under ‘godrays’, so that could be the problem).
    Great post, Inara- thank you!


    1. Thanks you – and thanks go to Niran as well for chatting with me about the work! 🙂


Comments are closed.