Results 1 to 14 of 14

Thread: Need Mac LW 11.5 users to help test plugin

  1. #1
    eye kan kode gud jrandom's Avatar
    Join Date
    Dec 2009
    Location
    Seattle, WA
    Posts
    1,143

    Need Mac LW 11.5 users to help test plugin

    I've finally got the initial versions of my new optimizer nodes (delta / conductor) for v11.5 done. The old version was made pretty obsolete by the new unified sampling model, and I wanted more features anyway so I've been porting it over to C++ and updating it for the latest version of Lightwave.

    I don't have documentation written up yet, nor do I have a C++11 toolchain set up for Windows, so I've only got the Mac 32/64 plugin compiled at the moment.

    T'was wondering if any of you Mac users could install this and see if you run into any problems.

    The optimizer nodes are easy to set up this time around -- simply hook each output into the corresponding input of the delta or conductor material node.

    Basic Usage:

    The term 'cutoff' means the bounced ray where the switch will occur. So if you have "Simple Color" enabled and have the Full Color Cutoff set to 1, the camera ray (bounce 0) will see the full color, and after that all rays will see the Simple Color.

    There are two main concepts here: have bounce rays see a simpler color/specular/roughness map than the camera (either a solid color, or if you're using complex procedurals you can plug in a simpler version that uses less octaves or whatnot into the Simple Color input), and to shut off reflections after a set number of bounces.

    Reflection and Highlight compensation will attempt to mimic the look of surface specularity after reflections have been shut off so you can have things like specular highlights affect reflections and global illumination even though the specularity has been cut to 0. These options slow things down a tiny bit, so you have the option to disable them.

    Global Illumination rays can be controlled separately, allowing for visible reflections as seen by the camera and it's reflected rays while having the global illumination rays truncate reflections at the specified cutoff point (use '0' if you don't want GI to see reflections at all).

    If you want to see what the bounce rays will see, temporarily set all the cutoff values to 0. This will give you a good idea of what the optimizer nodes actually do. Think of it as designing a simpler, faster-to-calculate world that is intended to sit behind the full-quality materials seen by the camera.

    Any questions, comments, and suggestions are welcome. I'm trying to get the Windows plugin compiled and some decent documentation written and will post those (along with the source code) when it's all ready to go.
    Attached Files Attached Files
    Last edited by jrandom; 04-07-2013 at 12:03 PM.

  2. #2
    eye kan kode gud jrandom's Avatar
    Join Date
    Dec 2009
    Location
    Seattle, WA
    Posts
    1,143
    I just tried this out on my "kill Layout with blurry reflections" scene to really test things out.

    This shot is a sort of best-case scenario for the optimizer -- an enclosed space with all surfaces sporting blurry reflections (what you see is a blend of delta and conductor materials), and a lot of indirect light.

    I'm using a ray cutoff of 4, and non-interpolated monte-carlo GI at 3 bounces, 4 rays.

    A single AA pass takes 20 minutes, 4 seconds:

    Click image for larger version. 

Name:	Render Full 20m_4s.jpg 
Views:	113 
Size:	352.8 KB 
ID:	113401

    For the optimized version, I kept the regular rays on full with no cutoffs, so it sports all four reflection bounces and keeps the normal/bump maps on all the way (so the scene would look good even through windows and in mirrors), and just used the optimizer nodes' separate GI settings so GI doesn't see much in the way of reflections nor bump/normal maps.

    Total render time: 1 minute, 7 seconds.

    Click image for larger version. 

Name:	Render Optimized 1m_7s.jpg 
Views:	98 
Size:	360.4 KB 
ID:	113402

    Here's what the node setup looks like. These optimizers are waaay easier to hook up than my last version.

    Click image for larger version. 

Name:	Optimizer Node Setup.png 
Views:	72 
Size:	240.1 KB 
ID:	113403
    Last edited by jrandom; 04-07-2013 at 04:40 PM.

  3. #3
    Mike, in Monsters Inc Tartiflette's Avatar
    Join Date
    Feb 2003
    Location
    Montpellier, South France
    Posts
    596
    Will try to test it as soon as i can and report, although i don't use delta or conductor nodes very often.
    Anyway, perhaps it's about time to use them more, especially with what seems to be a great plugin !

    Thanks a lot for providing it.


    Cheers,
    Laurent aka Tartiflette.

  4. #4
    eye kan kode gud jrandom's Avatar
    Join Date
    Dec 2009
    Location
    Seattle, WA
    Posts
    1,143
    Thanks! I'm pulling my hair out trying to get a C++11 toolchain on Windows up and running so I can get this out to everyone else. The microsoft compiler ecosystem is just totally messed up. Hateful, even.

    Hey, if you post a screenshot of how you normally create surfaces/materials, I'll see if I can design an optimizer that'll fit your workflow. (I'm looking at dielectric and skin materials right now, but I don't know if I'll be able to design useful optimizers for those.)

  5. #5
    eye kan kode gud jrandom's Avatar
    Join Date
    Dec 2009
    Location
    Seattle, WA
    Posts
    1,143
    Hey, if any Windows users are reading this, I got a successful build! Woo!

    Of course, I've only tested the 64-bit version as I do not have 32-bit Lightwave running. I'm still working on the documentation, but if any LW11 Windows users want to try this out, here's the full set of plugins:
    Attached Files Attached Files

  6. #6
    Registered User
    Join Date
    Dec 2008
    Location
    Ghana West Africa
    Posts
    843
    Oh how nice of you!
    I ll dig into this as soon as I get my break
    ...and thanks!

  7. #7
    well this will not load in 64bt mode for me in 11.5, presume the plugin is the cache node for vector and scalar functions (also just tested 32 , also no go, 2 x 3GHz Quad-Core Intel Xeon, 10GB memory, Mac OS 10.6.8 SnowLeopard)

  8. #8
    eye kan kode gud jrandom's Avatar
    Join Date
    Dec 2009
    Location
    Seattle, WA
    Posts
    1,143
    Erm... the separate 32/64 plugins are windows-only. Did you try the one in the MacUB folder? I'm developing on 64-bit Mac and running Lightwave 11.5, so it should work. Are you getting any particular error or does it just not show up anywhere?

    Oh wait a sec... I'm developing on Mountain Lion... Hrm. When I get home tonight I'll see if there's a compiler option I need to use to make it work in Snow Leopard. Didn't even think of that particular stumbling block. This is why I really want other people to be testing this thing out.

  9. #9
    from 20 minutes to 1 minute well that sounds like hell of a job/optimization - good work man
    RAM-Studio
    WS - Dual Xeon E5-2698v4/128GB/Win10x64/x TitanX(M) + 2x GTX 1080Ti + GTX 1080
    My LWM Video Car Modeling Tutorial

  10. #10
    eye kan kode gud jrandom's Avatar
    Join Date
    Dec 2009
    Location
    Seattle, WA
    Posts
    1,143
    I'm a real sucker for blurry reflections -- I want to use them on everything. That was the primary driving force behind this plugin as blurry reflections are too slow in general when you've got enclosed scenes, and doing these kind of optimizations by hand in node networks is just mad.

  11. #11
    TrueArt Support
    Join Date
    Feb 2003
    Location
    Poland
    Posts
    7,891
    Quote Originally Posted by jrandom View Post
    I'm a real sucker for blurry reflections -- I want to use them on everything.
    There is no other in real world

    I showed how to simulate them by hand in 2nd video tutorial How to Control Reflections:
    http://www.youtube.com/watch?v=WjvUxRnNcak
    http://www.youtube.com/watch?v=nP425jM1oGM

  12. #12
    Erm... the separate 32/64 plugins are windows-only. Did you try the one in the MacUB folder?
    The folder I downloaded was the one marked Mac 64bt at the foot of the post it contained only one standalone plugin was not in a folder and looked like any other Mac plugin – "RainyBrain_Nodes.plugin" was it's title, if I made one too many assumptions here I'm sorry

  13. #13
    eye kan kode gud jrandom's Avatar
    Join Date
    Dec 2009
    Location
    Seattle, WA
    Posts
    1,143
    No no, that's correct. I suspect XCode is defaulting to Lion or Mountain Lion specific binaries, but I have vague memories that there's a setting that will let me make it compatible with Snow Leopard. I'll go look for it when I get home from work today.

  14. #14
    eye kan kode gud jrandom's Avatar
    Join Date
    Dec 2009
    Location
    Seattle, WA
    Posts
    1,143
    I have some bad news: My plugin is written using C++11, and the standard library used for Mac C++11 binaries is not targetable for Snow Leopard. I can compile for 10.7 Lion (and will do so for the final release), but Snow Leopard support is not feasible and it would be far to much work to restructure my code to get rid of all the C++11 elements.

    It appears Snow Leopard is being left behind by Apple.

    The only way it could be used on SL is if some other dev takes the source (which will be included in the full release) and reworks it for either old C++ or straight-up C.

    Edit: Oh man, I even remember now that this lack of C++11 support was why I finally upgraded to Mountain Lion in the first place.
    Last edited by jrandom; 04-08-2013 at 07:34 PM.

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
  •