An appeal to Iray architects

Oso3DOso3D Posts: 15,111

Please please please consider adding lighting based on light primitives.

I have a number of beautiful scenes that I pretty much can't run with this hardware because every light source is an emmissive object. With dozens of light sources, this slows my machine down to a glacial drip.

What's worse, the light sources are often embedded as bones or whatnot, so I pretty much have to place lights by hand, one by one by one by one...

 

Comments

  • KindredArtsKindredArts Posts: 1,349

    Please please please consider adding lighting based on light primitives.

    I have a number of beautiful scenes that I pretty much can't run with this hardware because every light source is an emmissive object. With dozens of light sources, this slows my machine down to a glacial drip.

    What's worse, the light sources are often embedded as bones or whatnot, so I pretty much have to place lights by hand, one by one by one by one...

     

    Do you mean place manual photometrics or actual emissive primitves? I normally make sure anything emitting light isn't geometrically complex, so it shouldn't cause more of a headache than usual. However, i know a lot of artists want their products to be as close to a real life approximation as possible, so it can be a bit of a trade-off at times.

  • Oso3DOso3D Posts: 15,111
    Light bulb objects with Iray emission turned on. Even at basic resolution, thats... inefficient. I'm trying a scene with all those lights off and a point light above camera view, in the hopes I can render the darn thing.
  • ToborTobor Posts: 2,300

    Will, could you post an example of what you're talking about.

    It sounds like you'd like to set the geometry of an area light emitter (disc, rectangle, sphere, cylinder) to an arbitrary shape. Interesting idea, but not one nVidia is likely to entertain. They'll just tell you to buy a $9,000  Tesla K40 card!

    Not that what you talking about isn't needed. By design, emissives don't project illumination when using Interactive mode, and some projects benefit from that.

  • Oso3DOso3D Posts: 15,111
    edited April 2016

    What I mean is either lighting with point lights or at the very least put in locations where you can place the lights yourself.

    I was wrestling with Aslan Court 1. Lighting is entirely by light bulbs in 16 lanterns around the hall. Which looks really cool but I'm getting 1 iteration every 30 seconds, which means a render time of a few centuries.

    Then I considered putting in my own point lights. No problem! Except most of the lanterns are bones or whatnot so I can't simply use Align to get the point lights in the right spots, I have to slowly, by hand, place each one.

    Eventually I gave up on all of it and just put a point light as disk near the ceiling and called it a day. (There's also a sun/sky dome outside to provide some nighttimelike illumination)

    http://willbear.deviantart.com/art/Aslan-Court1-602233458

     

     

    Post edited by Oso3D on
  • KhoryKhory Posts: 3,854

    The more light sources the faster iray renders so the issue is not the number of light sources or the fact that they are mesh/emissive lights. What can be an issue is the number of poly's that the light shader is applied to. Over the last couple of months I have done an ungodly number of renders with emissive lighting and the only time I have had really noticable delays is a scene I did for my floor shaders months ago and I suspect that was due to the huge volume of reflective surfaces combined with the lighting.

  • mjc1016mjc1016 Posts: 15,001
    Khory said:

    The more light sources the faster iray renders so the issue is not the number of light sources or the fact that they are mesh/emissive lights.

    Not quite...it's the total AMOUNT of light that makes the difference.  More sources can increase render times...more LIGHT can reduce them.   Each source needs to be separately calculated.  So fewer, brighter sources will be faster than more dimmer sources giving the same over all amount.

    Khory said:

    What can be an issue is the number of poly's that the light shader is applied to.

    Very true.  The difference between a single poly emissive surface light and 'standard' light is well within the margin of variability of just running the same render over and over...in other words, fractions of a second.  But up the poly density...up over a couple dozen (actually you should start hitting something noticeable before a couple dozen, but the time impact is small) and you will really start to notice.

     

    Khory said:

     Over the last couple of months I have done an ungodly number of renders with emissive lighting and the only time I have had really noticable delays is a scene I did for my floor shaders months ago and I suspect that was due to the huge volume of reflective surfaces combined with the lighting.

    Again, very true...and compounded by an increased number of sources.  Each source is an additional set of bounce calculations...

  • SpottedKittySpottedKitty Posts: 7,232
    Then I considered putting in my own point lights. No problem! Except most of the lanterns are bones or whatnot so I can't simply use Align to get the point lights in the right spots, I have to slowly, by hand, place each one.

    There's a shortcut. Note that it only works in a case like this, where the lanterns are separate figures or props from the rest of the architecture.

    Create a point light for each lantern in the scene.

    Parent one of these lights to each lantern; either to the whole lantern figure or to the lantern body part (in this case they're the same thing, it might be different in other meshes).

    Select all the parented lights, and zero all the X/Y/Z Translate dials in the Parameters tab. This will snap each light to the base zero point of each lantern.

    Still with all the lights selected, zoom in to one of the lanterns and use the X/Y/Z dials to place the light exactly inside (or just below, whichever you prefer) the light bulb inside the lantern.

    Since all the lights are parented, they'll all move in the same way, so you only need to do this once.

    Now you can fiddle with the actual light settings.

  • Oso3DOso3D Posts: 15,111
    Thanks for the tip! Maybe blaming emission was wrong, just might be too big of a scene and needs a good 'hide a lot of stuff' winnowing. But will be good for future stuff
  • j cadej cade Posts: 2,310
    mjc1016 said:
    Khory said:

    The more light sources the faster iray renders so the issue is not the number of light sources or the fact that they are mesh/emissive lights.

    Not quite...it's the total AMOUNT of light that makes the difference.  More sources can increase render times...more LIGHT can reduce them.   Each source needs to be separately calculated.  So fewer, brighter sources will be faster than more dimmer sources giving the same over all amount.

    Generally the way I think about it is the more the scene is directly lit (so its not relying as much on bounces) the less iterations it will need to clear up > faster. More lights often means more of the scene is primarily directly lit, in which case it will be faster. However there are plenty of ways to have lots of lights and not have most of the scene directly lit (like say if you're feeling like being super realistic and you stick a bunch of lights behind glass shades with a non-0 value for refraction roughness. I tried that once. no.)

  • ToborTobor Posts: 2,300
    edited April 2016

    If the geometry of the lamps is not meant to be seen, there's no sense making them emissive. You can achieve a faster, and frankly better, result using point lights with IES profiles that cast light in the shape you want. There are a couple of techniques for setting the 0,0,0 rotation of point lights so they are aimed where you want them; see some of the posts on this, or hollar back if you want some tips.

    The example render you posted shows the lights are mostly for accent purposes. I'm guessing you already solved it, but if this problem occurs again, I'd recommend going with points lights with profiles over emissives, or if you insist on using emissives, starting over with your own. I know you know how to make more efficient emissives.

    (You can always tell how much the emissives are hindering render speed by hiding them. If the scene is now darker, compensate with a "master fill" somewhere, so you don't get the other problem of slow sampling rates with lower scene brightness.) 

    BTW, you were not wrong in being concerned about emissive sources, because unless you deconstruct them. there's no telling what issues they are causing. The poly count, total number of lights, and the settings of the emissive shader (i.e. conflicting nodes that have nothing to do with emitting light) certainly can and do affect render speed. There is no logic in the reasoning that you can have some arbitrary number of light sources, and therefore light path calculations, and it magically doesn't affect render times. How much of a difference depends on many factors, not the least of which is the CUDA processing of the scene. Floating point calculation for light paths is what these beasties are best at, so the more "worker bees" here the better. Some of us still have rigs with only 300-400 cores, and it's important to design emissive geometries with care.

     

    Post edited by Tobor on
  • mtl1mtl1 Posts: 1,508
    j cade said:
    mjc1016 said:
    Khory said:

    The more light sources the faster iray renders so the issue is not the number of light sources or the fact that they are mesh/emissive lights.

    Not quite...it's the total AMOUNT of light that makes the difference.  More sources can increase render times...more LIGHT can reduce them.   Each source needs to be separately calculated.  So fewer, brighter sources will be faster than more dimmer sources giving the same over all amount.

    Generally the way I think about it is the more the scene is directly lit (so its not relying as much on bounces) the less iterations it will need to clear up > faster. More lights often means more of the scene is primarily directly lit, in which case it will be faster. However there are plenty of ways to have lots of lights and not have most of the scene directly lit (like say if you're feeling like being super realistic and you stick a bunch of lights behind glass shades with a non-0 value for refraction roughness. I tried that once. no.)

    To be more pendantic about it, iray -- or any similar FE analysis -- works fastest when it has an easily convergable scene. Even direct/indirect/bounce light may not be the best descriptor to use because a high-quality reflector will converge well whereas a glossy/diffuse/lossy reflector will not.

Sign In or Register to comment.