Faster GI Solution?

2007-01-31
2013-05-28
  • Alvaro F. Celis

    Alvaro F. Celis - 2007-01-31

    Hi Guys!

    Last night I tried to render a simple scene with a sun light as only light source. I tried Path Tracing which doesn't require photon maps, so I added this code I found in another thread:
    ---------------------------
    lightserver {
       direct-samples 32
    }
    trace-depths {
       diff 4
       refl 4
       refr 4
    }
    gi {
       type path
       samples 256
    }
    ---------------------------
    If I do a quick IPR render you see the effect of GI occurring around the room (compared to the plain version exported directly from blender), but if I then decide to do a final render of this scene it takes forever!! I left it "cooking" last night at 9:15 and came back for it today at 8:00 am (almost 12 hours) and the render was only at 48%.

    Is there a faster GI solution? Oh yes, another question here is: which lights generate photon maps? or how do you implemente them? This, in order to try the other 2 GI options (Irradiance cache and instant GI).

    Thanks in advance. I'll post a regular and a GI IPR render of the scene in a minut.

     
    • Christopher Kulla

      Can you mail me the scenes? Its important to take into account the anti-aliasing settings when tweaking sampling rates. Path GI is probably the best choice at the moment. The irradiance cache should become much better when I have time to rewrite it properly - it can be run with or without photons.

      At the moment only the area lights, point and directional lights support photons.

       
    • Alvaro F. Celis

      Alvaro F. Celis - 2007-01-31

      Sure Chris, grab the file here:
      http://www.danielpatton.com/afecelis/Sunflow/sunlight.zip
      It's great having you give it a look. Let me know of any improvements to it ;)

      cheers,
      Alvaro

       
      • Christopher Kulla

        The main thing that was wrong was the aa rate as I suspected. You set it to 0,4 which translates to a minimum of 1 sample per pixel (0) but a maximum of 256 (!) eye rays per pixel. Each of those then goes and fires 32+256 rays for the sun/sky and path-gi (not counting secondary bounces). This is why the scene took so long to render.

        I reduced the settings to [aa: 0,2 sunsky: 64, gi: 32] and am getting a reasonably quick render (albeit noisy). I will try to recommend some better settings after I have had a chance to experiment a bit more.

        This type of scene (indoor skylight) is rather tricky to render with Sunflow at the moment since it doesn't have any way to notice that the skylight is only coming from a small opening. Methods like MLT would be better are finding those light paths. Another option is the sky-portal which some commercial renderers implement. You place what looks like an area light in your scene, but instead of emitting light, it "guides" the sampling towards that region. I will try to see if I can implement this if you think it would be useful.

         
    • Alvaro F. Celis

      Alvaro F. Celis - 2007-02-01

      Whoa! thanks Chris! Nice tips. Of course implementing something like that would be useful! I'd be very glad to test it out and see it in action ;) I like Sunflow's GI rendering quality even not being and MLT based renderer. I think you can get outstanding results if you use the proper settings. I'm trying out your values to see it in action; did you change the values in the blender file (prior to exporting) or directly in the .sc file?

      Many thanks for all the help.

      Regards,
      Alvaro

       
      • Christopher Kulla

        I just changed the options in the .sc file. Another thing I forgot to mention is that the lightserver {} block is deprecated, it has no effect for the skylight. I'll be taking it away in the next release. Be sure to tweak the sky samples in the light itself.

        I'll do some tests with sky portals and see if I can get any dramatic speedups.

        I'm launching an overnight render with some higher settings. I will let you know how it turns out.

         
    • Alvaro F. Celis

      Alvaro F. Celis - 2007-02-01

      Thanks Chris. Could you please upload your modified .sc file somewhere to check it out?(if possible both versions; the one with fast settings and the other with the sky portal). ;)  Also to compare the newer code and see what's been deprecated.

      regards,
      Alvaro

       
      • Christopher Kulla

        Here is what I got after 5 hours (I rendered a 1440x960 image):
        http://img167.imageshack.us/img167/1986/sunlightkk8.png

        There's still some noise which will be hard to get rid of with the current code.

        Here are the settings I used:

        image {
            resolution 1440 960
            aa 0 2
            filter gaussian
        }

        bucket 48 spiral

        trace-depths {
        diff 2
        refl 0
        refr 0
        }

        gi {
        type path
        samples 64
        }

        light {
            type sunsky
            up 0 0 1
            east 0 1 0
            sundir 0.001012 0.636571 0.771217
            turbidity 6
            samples 256
        }

         
    • Designn

      Designn - 2007-02-01

      Hi Christopher!
      This render engine is cool... it will be great...
      Hasan 

       
    • Alvaro F. Celis

      Alvaro F. Celis - 2007-02-02

      Looks great Chris!
      Thanks for sharing the settings. Will try it out as well.

      What are your machine specs?

      Regards,
      Alvaro

       
      • Christopher Kulla

        That was on a Dual Opteron 2Ghz, 2GB RAM and windows xp64.

         
    • Rave_Zero

      Rave_Zero - 2007-02-15

      I've just wanted to say THANK YOU for Sunflow to everyone who made it possible.
      It is the easiest to use and fastest renderer for Global Illumination, which I've used with Blender so far.
      The results of "Instant Global Illumination" are very close to the final "path" renderings already (my favorite settings for quick previews are: type igi, samples 128, sets 1,  b 0.00000, bias-samples 0 => IPR Render Mode)

      Keep up the good work and thanks for this useful renderer again!

       

Log in to post a comment.