Page 2 of 3 FirstFirst 123 LastLast
Results 16 to 30 of 35

Thread: Speeding up Blurry reflections with Nodes.

  1. #16
    Hmm, no I don;t think you could do it in reverse, in that way because the nodes are at a per-surface level, so the trick has to apply to the surface it's being applied too hmmm..

  2. #17
    Clever technique Tobian! Thank you for sharing it!

    Quote Originally Posted by adamredwoods View Post
    How does this trick compare to say, the motion blur trick?
    http://spinquad.com/forums/showthread.php?t=7003
    The only thing I can think right now is that they can be used together. Tobian's technique optimizes raytrace calculations and raytrace blurring reflections. With the old trick we still can take advantage of PR mblur for faking the blurry part. By stopping ray recursion per surface, we can optimize render times. It's possible also to apply a micro-procedural texture and smooth out the result with Pom's Random and Take Samples nodes. Results should be smoother but real reflection blur may be probably faster.

    MooseDog, interesting tests! by seeing your node setup it seems the difference in your results is not lambertian but the blending mode you are using (normal). To approximate default results we can use additive or screen mode for reflection mix.



    Gerardo

  3. #18
    so, with these options, it is hard to figure out what the best method is,...

    Tobian method
    Gerardo method
    Hypersmooth method

    http://forums.cgsociety.org/showthread.php?t=231398
    http://www.newtek.com/forums/showthread.php?t=98938

    Gerardo, i was wondering, can you explain the method you described over at cgtalk... (a loong time ago : ) ...with a bit more detail?
    LW vidz   DPont donate   LightWiki   RHiggit   IKBooster   My vidz

  4. #19
    Dreamer MooseDog's Avatar
    Join Date
    Jul 2003
    Location
    Mount Whoville, VT
    Posts
    1,438
    i think best prolly depends on your scene and needs (yep, that's me; captain obvious! ). tho i also love hearing anything from gerardo.

    as to your thought on animating reflection blur, couldn't you: replace the scalar node in tobian's set-up with a gradient node having only one key, that key being animated via it's envelope.
    We are pirates, we are artists...

    Blog

  5. #20
    i guess, but i'm a bit curious atm at Gerardo's method,...

    the thing is, it was written a long time ago, so i'm not sure the example still stands,
    and if, how much time would it save compared to LW's current solution.

    if anyone could elaborate a bit more (hehe, i have no clue really ) ...on that Gerardo setup maybe we could get some more insight to if it'd work.

    i'm also interested in hearing from people who have tried hypersmooth, does it run in 9.6? is it fast?
    Last edited by erikals; 08-20-2009 at 08:52 AM.
    LW vidz   DPont donate   LightWiki   RHiggit   IKBooster   My vidz

  6. #21
    Simple - Mine

    Not sure at all what Hypersmooth does or how it works, but I don't know how it compares to Lightwave's current reflection system(it's been speeded up since LW8), or indeed a proper Gaussian sampling schema (such as Pomm's node! Slow but hugely better!) As to Gerardo's method, you can open my scene, and apply his method instead, and try and get a similar effect, and see how the render times compare. You can also apply some of my methodology to the Gerardo method too (apply the spot node/logic to bump amplitude/movement so bounced recursion rays don't get multi-sampled beyond the first bounce) Either way it's quite possible to combine the techniques (well not hypersmooth)

    I am thinking that someone needs to do exhaustive tests to compare - I am not sure I can be bothered

  7. #22


    ok, thanks, i will search some more...
    http://www.newtek.com/forums/showthread.php?t=61465
    LW vidz   DPont donate   LightWiki   RHiggit   IKBooster   My vidz

  8. #23
    Erikals, the old method still stands. There's an old thread over Spinquad forums where I shared the sample scene (the mblur parameter controls the smoothness of the effect). The bump map doesn't need any gradient, btw. Maybe a nodal adaptation could be in this way:



    We could use a micro-procedural texture instead of a noise map. Pom's Take Samples node could be useful with a very low range of samples (2-3) if we are planning to use low AA passes without Adaptive Sampling.

    According to my test here, the old trick is still a bit faster. Mainly because it doesn't use reflection blur option, though I think the Blur parameter offers a better finishing. Then, I'd use Tobian optimization setup if I'd need to apply the reflections over polished materials (no visible bump maps, like in a calm river for example), and the old trick for materials with visible bump maps (like a turbulent sea for example) or still images. Though there's no reason why we can't mix both solutions, too. I like these kind of optimizations through nodes because we can use native LW solutions with simple setups.

    There's a faster way also through DP_IFNE that I prefer to use more to enhance LW's reflection blur, but it could work alone as well as post-filter. I probably share the setup in the second HDRI3D article about Filter Node Editors.

    Btw, HyperSmooth work only until LW 8.x version, but by running under LW 7.5, it's still surprisingly faster than current anireflections (!)



    Gerardo

  9. #24
    Out of curiosity why do you need to make a vector out of the random node: Scalar inputs go straight into vector one's without a problem?

    yeah one problem with any king of normal perturbation is that it affects everything (unless you use a per shader normal as you did there Gerardo) I.e. If you had some glass and you wanted to make it slighty burred on the surface, but not in refraction, you would have to do the normal displacement only in the reflection and not the surface normal (or bump). In the inverse, you often get materials which are quite diffusing, but have a very sharp reflecting surface (smoky glass, semi opaque plastics etc.) It's one of the bugbears of 'materials' that you can't have different reflection and refraction blurs!

  10. #25
    hm,.. i need to do some more tests, here's one,...
    just LW reflection blur, rendertime 5min,...
    scene posted here,
    http://www.newtek.com/forums/showthr...t=98572&page=2

    LW vidz   DPont donate   LightWiki   RHiggit   IKBooster   My vidz

  11. #26
    Tobian's scene (loacted here) with adaptive sampling set to 0.01
    rendertime 5min, that's very good for a scene like this,... (using a Quadcore 2.6)

    however, the scene setup we have here is not optimized for animation and motionblur,
    so i'm gonna do some tests, in a bit.

    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	AS_001.png 
Views:	629 
Size:	653.8 KB 
ID:	76460  
    Last edited by erikals; 08-21-2009 at 02:09 PM.
    LW vidz   DPont donate   LightWiki   RHiggit   IKBooster   My vidz

  12. #27
    hm, it went surprisingly well, rendertime 10 min on a Quad 2.6

    not bad, considering there is no noise...

    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	AS_003_PR4pass2.png 
Views:	629 
Size:	647.0 KB 
ID:	76461  
    Attached Files Attached Files
    LW vidz   DPont donate   LightWiki   RHiggit   IKBooster   My vidz

  13. #28
    last test, same scene, lower AA, 'higher' AS 0.25, lower MBpass...

    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	AS_003_PR2pass.png 
Views:	609 
Size:	698.7 KB 
ID:	76464  
    Last edited by erikals; 08-21-2009 at 05:06 PM.
    LW vidz   DPont donate   LightWiki   RHiggit   IKBooster   My vidz

  14. #29
    Member Simon's Avatar
    Join Date
    Feb 2003
    Location
    Hertfordshire, England
    Posts
    511
    Quote Originally Posted by MooseDog View Post
    it's definitely a big time saver

    the series of images below are as follows:

    old-fashioned blurring:

    g.i. 2m38s
    render 5m31s

    new-fangled blurring:

    g.i. 41.4sec !!
    render 3m56s

    (that's a 30% decrease in render times!! congrats.)

    i also did another test with an extension to your network. it involves changing the shading process by running the whole thing through a lambert diffuse node going into diffuse shading only. imho, it provides a more realistic render, but the times really start to climb again. the gods giveth and the gods taketh away! (the idea for the lambert shading thing is not mine at all, i found it i forget where so all credit to the original creator who did the final image below. i just re-purposed it here with your blurring technique. and if anyone sees any improvement to this network, speak-up! i'm pretty sure something is logically off-kilter )

    new-fangled blurring with lambert:

    g.i. 3m41s
    render 6m24s

    tested on an aging dual-core with 2g of ram. so it should fairly rip on a newer rig.
    That was my screenshot here's the original thread although the attachments seem to have disappeared now. I think that must have been before the delta material was introduced which I guess does a similar thing.

    http://www.newtek.com/forums/showthr...ve+reflections

  15. #30
    Quote Originally Posted by Tobian View Post
    Out of curiosity why do you need to make a vector out of the random node: Scalar inputs go straight into vector one's without a problem?
    Mainly because we have the chance to choose what vector we want to move. We can get different - and smoothed results - by moving only the vector in Y direction, for example. And because - as a general rule - I've noticed also that we can commonly get slightly faster results when we made this convertions before.


    yeah one problem with any king of normal perturbation is that it affects everything (unless you use a per shader normal as you did there Gerardo) I.e. If you had some glass and you wanted to make it slighty burred on the surface, but not in refraction, you would have to do the normal displacement only in the reflection and not the surface normal (or bump). In the inverse, you often get materials which are quite diffusing, but have a very sharp reflecting surface (smoky glass, semi opaque plastics etc.) It's one of the bugbears of 'materials' that you can't have different reflection and refraction blurs!

    I agree. Maybe, you might want to try the old mBlur trick in IOR parameter here. Just input an envelope with repeating values from frame to frame, By activating motion blur you can have blurred refractions but crispy reflections. Btw, the old mBlur trick with micro-procedural textures with blurred reflections can be used also for blurred refractions.

    Interesting tests, Erikals!



    Gerardo

Page 2 of 3 FirstFirst 123 LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •