iRay Lights Emitter Area Problem

Hi,

 

it is really useful to set spotlights to a larger emitting area (rectangle, circle, ...) for softer lighting.
For setups when there aren't physical lamps I often want to install virtual lightsources. Setting the parameter "Render Emitter" = OFF does a good job.
But: although the light emitting raea is invisible now, it still casts its own shadow. And if a camera is positioned behind it, you only see a black object in front.
So is "invisible" not really invisible?

Is this a bug or am I getting something wrong?

Attachment: Virtual (spot)lights with circular area

Area Light Emitter Problem.jpg
937 x 707 - 82K

Comments

  • Render emitter off will stop a light from blocking the camera, at least. You might also want to look at the Ghost Lights product, though it uses planes in order to keep the geometry simple.

  • AndySAndyS Posts: 1,434
    edited January 2017

    OK.

    The camera is not blocked. But for every other light the emitter still casts his own shadow. How can I stop this?
    As it is stated that the emitter (object) is ignored for the render, so it isn't allowed to produce shadows (at least this would be the logically consequence).

    And NO - I don't want to buy an extra product.
    You learn more, if you try it by your own and get the idea how it works and (perhaps) why.

    Post edited by AndyS on
  • TheKDTheKD Posts: 2,676

    You could try turning spheres into emitters. Turning off render emitter must only make the light source invisible, but an object still exists there, and an object that exist will always cast a shadow.

  • hphoenixhphoenix Posts: 1,335
    AndyS said:

    OK.

    The camera is not blocked. But for every other light the emitter still casts his own shadow. How can I stop this?
    As it is stated that the emitter (object) is ignored for the render, so it isn't allowed to produce shadows (at least this would be the logically consequence).

    And NO - I don't want to buy an extra product.
    You learn more, if you try it by your own and get the idea how it works and (perhaps) why.

    In real life, if you have a 30w light bulb (on) beneath a 120w light bulb, and a surface beneath both, the 30w bulb WILL cast a shadow.  This is how light works.  Turning the emitter 'invisible' is a convenience added to Iray to allow lighting to be added to a scene without really being there (to simulate certain behaviors that are too expensive to actually calculate.)  But the emitter is ONLY invisible to the camera.  NOT to the rest of the scene.  So it will ALWAYS cast shadows, just like it would in real life.

    If you need to turn light sources physical characteristics on and off at will, without regard to physically-based rendering requirements, you'll need to switch back to 3Delight.  Otherwise, re-think your lighting setup for the scene and find a way to not have lower strength lights below stronger lights.  While there is still shadowing in the reverse case, it is MUCH less noticable.

     

  • ToborTobor Posts: 2,300

    Shadows from large lamps are a technical problem in the real world, too. In real life you would not be able to light the scene the way you're doing it here. Such large lights sources would be visible, for one thing, and they'd certainly cause shadows behind themselves. Iray is trying to be as realistically plausible as possible, and while it's agreed to hide the emitter, it's not fully complying with your vision for the sake of following physics.

    There are numerous ways to tackle the shadows in CG, and the best approach depends on your particulars. Two ideas:

    1. For very large (meter square and larger) light sources, try a large plane emissive geometry with just a single division. Make the geometry as simple as you can, and apply the emissive shader to make sure all the channel values that shouldn't be involved are nulled out. Then set the cutout opacity to 0.0001, basically the smallest value you can. That will make the plane invisible in your scene, but it will still cast light. Except the use of emissives to slow down the render at least some (how much depends on the length of a piece of string).

    2. Try a point light with an IES profile (you can't use profiles with spots). Find a freebie profile that has a very wide exitance cone. You can make the emitter itself smaller and still have a diffused light that casts a softer shadow. This method is useful when you still want some realistic shadows cast by the lights. A problem with emissive geometries is that by default they cast a soft, diffuse light, and can make scenes boring. 

     

  • AndySAndyS Posts: 1,434
    hphoenix said:
    ... lighting to be added to a scene without really being there

    Correct! Being not there - that includes without shadow. If the emitter isn't there, who causes the shadow?

    hphoenix said:
    If you need to turn light sources physical characteristics on and off at will, without regard to physically-based rendering requirements, you'll need to switch back to 3Delight.  Otherwise, re-think your lighting setup for the scene and find a way to not have lower strength lights below stronger lights.  While there is still shadowing in the reverse case, it is MUCH less noticable.

    Please see my starting post:

    As there is no physical object representing a physical light source, I need some sort of virtual lighting.

    In all scenes, where there are physical lamps in the set, I ever transform these props into the light emitting resources in a suitable way.

    3Delight isn't any alternative anymore. If you try to light a scene as photorealistic as possible in 3Delight, render needs way longer compared to iRay. But 3Delight never reaches that photorealistic quality compared to iRay.

    OK, if you do, as most of the users here, only phantasy scenes with some mystical light without any physical justification, efforts for realism are not necessary. Add some strange light effects is 3Delight is good enough.

  • AndySAndyS Posts: 1,434
    TheKD said:

    You could try turning spheres into emitters. Turning off render emitter must only make the light source invisible, but an object still exists there, and an object that exist will always cast a shadow.

    That's not logical !
    How can an invisible object cause a shadow?

  • TheKDTheKD Posts: 2,676
    AndyS said:

    That's not logical !
    How can an invisible object cause a shadow?

    It's not really an invisible object, or it could not emit light. Somethng is there still.  

  • AndySAndyS Posts: 1,434

    Yea, somehow true.
    But is only a rays creating zone.

    A shadow out of the nowhere is perverting physics.
    Light out of the nowhere we know very well from 3Delight UE2.

  • AndySAndyS Posts: 1,434

    But I found a workaround ...

    A primitive with emitting iRay shader and cutout opacity almost 0.

  • hphoenixhphoenix Posts: 1,335
    AndyS said:

    Yea, somehow true.
    But is only a rays creating zone.

    A shadow out of the nowhere is perverting physics.
    Light out of the nowhere we know very well from 3Delight UE2.

    I understand your frustration.  But Iray is PBR, and there are no 'invisible' objects.  Even if it is 'hidden' from the camera, it still exists to the scene.  The closest you can get to 'invisible' in a scene is 0% cutout opacity, 100% roughness and no layered coats for specularity.  1.0 IOR, etc.  Make the object purely diffuse, purely transparent to the scene.  And that makes it 'invisible' and as such it can't emit light either.  You have to have at least SOME presence.  So you make the Cutout Opacity very close to zero, remove anything else that could cause artifacts as best you can, and you'll get close to what you want.  It's still technically going to cast SOME shadow, but it will be so slight that it will be imperceptible.  That's Physically-Based Rendering for you.....

     

  • AndySAndyS Posts: 1,434

    Sorry no,

    hphoenix said:
    The closest you can get to 'invisible' in a scene is 0% cutout opacity, 100% roughness and no layered coats for specularity.  1.0 IOR, etc.  Make the object purely diffuse, purely transparent to the scene.  And that makes it 'invisible' and as such it can't emit light either. 

    with Outcut Opacity = 0 it stops emitting light.
    That's the next mystic thing.
    If you only set the opacity a very very little above 0, it emits the light at full intensity again, independant of the opacity value. But exactly 0 -> no light emission anymore.

  • hphoenixhphoenix Posts: 1,335
    AndyS said:

    Sorry no,

    hphoenix said:
    The closest you can get to 'invisible' in a scene is 0% cutout opacity, 100% roughness and no layered coats for specularity.  1.0 IOR, etc.  Make the object purely diffuse, purely transparent to the scene.  And that makes it 'invisible' and as such it can't emit light either. 

    with Outcut Opacity = 0 it stops emitting light.
    That's the next mystic thing.
    If you only set the opacity a very very little above 0, it emits the light at full intensity again, independant of the opacity value. But exactly 0 -> no light emission anymore.

    That's what I said.  If an object is invisible, it CANNOT emit light.  That's physics.  Find one single invisible object in nature that emits light!  (Okay, if we get down into blackbody radiation, it's theoretically possible, but that isn't visible spectrum light.)

    So you can't make it COMPLETELY invisible.  Just very close to it.  Now light emission can occur.  And so can shadows.

     

  • AndySAndyS Posts: 1,434
    hphoenix said:
    So you can't make it COMPLETELY invisible.  Just very close to it.  Now light emission can occur.  And so can shadows.

    But that's not related to the original subject of my opening post.

    The hidden spot-lights still cause their own shadow.
    A meshlight with opacity almost 0 don't cause an own shadow (still at max light intensity), cause the shadow is directly related to the opacity value.

    --> That's the solution for the workaround, I found (see some posts above!).

  • ToborTobor Posts: 2,300
    AndyS said:

    The hidden spot-lights still cause their own shadow.
    A meshlight with opacity almost 0 don't cause an own shadow (still at max light intensity), cause the shadow is directly related to the opacity value.

    What's your point in arguing this? This is simulaton software, not real physics. While Iray does light path and materials computations to simulate real objects, it's still just a simulation, and there are a lot of exceptions to allow artists to produce the effects they want. You're lighting a scene with lights, hidden the lights, and then don't like the fact that the lights are casting shadows. The real "problem" is the ability to hide the emitter of these lights sources. Iray provides that as a convenience to you, but it's not physically plausible.. 

    Being able to hide an emissive mesh by lowering its opacity to near zero comes from how the Iray Uber MDL script is written. That script was written by someone at (or working for) Daz. They could have written it to disallow this effect, but thankfully they didn't, or you'd be stuck with those shadows from lights you don't want to show.

    If you want to achieve more realism, create a box frame and place the spotlight in it. Show the emitter. Your lights will produce the light you want, you'll see them in the render, and sure enough, behind them you'll get the shadows that nature intended.

  • AndySAndyS Posts: 1,434

    Sorry Tobor,

     

    didn't you read my opening post?

    I chose the option not to show the mitter, cause there isn't any lamp object in the prop.

    Your argument about realism:
    Since iRay claims to be photorealistic, a non visible object can't produce its own shadow.

    The rest are still some open bugs:
    The emitting property suddenly shuts down abruptly at the transition of opacity >0 to =0,
    wrong shadow transition for refractive surfaces,
    for HDRIs environment and map intensities are not settable seperately, although there are seperate parameters,
    etc., etc.

  • ToborTobor Posts: 2,300
    edited January 2017
    AndyS said:

    I chose the option not to show the mitter, cause there isn't any lamp object in the prop.

    Why not? There's no such thing as "light coming from no where."  You made the source of the light invisible, which is not realistic, but then objected to the shadows caused by the internal geometry Iray uses to produce that light. You yourself told Iray not to be photorealistic, so this is the best you can expect when using this feature.

    If you look at the coding in the MDL you'd see exactly why an emissive mesh no longer emits any light at cutout opacity = 0.

     

    Post edited by Tobor on
Sign In or Register to comment.