Making emissive surfaces invisible in the render while keeping the light

2»

Comments

  • Hi all! I've attached some images to clarify what I mean: I tried creating a ghost light, but eventhough I used the exact same light emitting values that my original light uses and an identical position, the differences are huge. I tried "compensating using the thin wall trick, but it doesn't help.

    The "ShineOldLight" screenshot shows how it looks using the old lighting. The "ShineNOK" screenshot shows what happens if the opacity gets close to zero. Can anybody help me to recreate that original shine using an invisible light? The overal lighting stays the same, but the reflection on the surfaces goes away... I can't have that... I need it back :) Thanks a lot,

    Me

    You look to have very shiny skin there, the bright areas are reflections of the non-hidden light

    Thanks for the reply! I know they are reflections of the visible light. Problem is I've got an identical hidden light and that doesn't give me the reflections... And I NEED these reflections... So I need to find a way to set up the hidden light in such a way is DOES give me these reflections. All ideas are welcome!!!

    Thanks a lot,

    Me

  • Hi again!!

    I was just looking at this product:

    https://www.daz3d.com/boss-pro-light-set-for-portraits-promos

    Does anybody know if these lights can be made invisible? They look quite stunning and very up to the task of giving me the "shine" I'm looking for.

    Thanks a lot,

    Me

  • It doesn't matter what light set you use, any time you make a light invisible, that is a ghost light, it will no longer cast reflections. You need a visible light if you want reflections. There's no way around this unless NVIDA changes the way iray works at some point in the future to allow it.

  • Thanks for the reply!

    So as I understand it right now, the extra shine in my render comes from reflections of light on the surface of my emissive light surfaces themselves... If correct, is there any way to make that light "bounce" around in exactly the same way using invisible surfaces, not necessarely lights or emissive surfaces?

    Thanks a lot,

    Me

  • The light on the figure is a reflection of the light source, if the light source is hidden there's nothing to reflect. You could do two renders, one with hidden lights and one visible, and mix them or - as noted above - you could use a light with a shape and set the emitter to off; that would show in reflections (and also when viewed through mesh, such as hair, even if the msh is set to be transparent) but not as a visible item when directly viewed.

  • ebergerlyebergerly Posts: 3,255

    So I guess I'm not really following the discussion so far with all the thin walled and stuff...

    So is it an issue/bug that the emissive varies with opacity or not? Seems pretty clear to me that it does.

    Thanks. 

  • ebergerly said:

    So I guess I'm not really following the discussion so far with all the thin walled and stuff...

    So is it an issue/bug that the emissive varies with opacity or not? Seems pretty clear to me that it does.

    Thanks. 

    If in doubt, bug report it and see what Support says. I think at least some of the differences are to be expected, but there may well be something else going on too.

  • nonesuch00nonesuch00 Posts: 18,120
    ebergerly said:

    I get the same thing. I'm using 4.9.4.177. Below are the identical scene, first with the emissive plane at 100% opacity, the second with 0.0001 opacity. I think that's clear indication that the emissive value is dropping with opacity.  

    The emissive light value isn't dropping but the reflective light from a surface is dropping. You can't reflect off a surface that isn't visible.

  • ebergerlyebergerly Posts: 3,255
    edited December 2017
    ebergerly said:

    I get the same thing. I'm using 4.9.4.177. Below are the identical scene, first with the emissive plane at 100% opacity, the second with 0.0001 opacity. I think that's clear indication that the emissive value is dropping with opacity.  

    The emissive light value isn't dropping but the reflective light from a surface is dropping. You can't reflect off a surface that isn't visible.

    Even if that were true, the core issue remains. There's no good way to make an object emit light while being unseen in the render. Other apps have this feature, and it's extremely useful. The surface(s) see the emissive, just the camera doesn't. I believe even Blender has a node where you can sort the rays by type (emissive, direct, indirect, and so on) and act on them however you want. 

     

    Post edited by ebergerly on
  • ebergerlyebergerly Posts: 3,255
    edited December 2017

    In fact, there's a checkbox for the emission object where you can select to make it visible or invisible to the camera. And the results are perfect. The render below has an emissive plane right next to the fighter thingy

    Emission].PNG
    951 x 538 - 1M
    Visibility.PNG
    321 x 246 - 17K
    Post edited by ebergerly on
  • Sven DullahSven Dullah Posts: 7,621
    ebergerly said:
    ebergerly said:

    I get the same thing. I'm using 4.9.4.177. Below are the identical scene, first with the emissive plane at 100% opacity, the second with 0.0001 opacity. I think that's clear indication that the emissive value is dropping with opacity.  

    The emissive light value isn't dropping but the reflective light from a surface is dropping. You can't reflect off a surface that isn't visible.

    Even if that were true, the core issue remains. There's no good way to make an object emit light while being unseen in the render. Other apps have this feature, and it's extremely useful. The surface(s) see the emissive, just the camera doesn't. I believe even Blender has a node where you can sort the rays by type (emissive, direct, indirect, and so on) and act on them however you want. 

     

    3DL has that option;)

  • Great! So now we need that option in Iray too :)

  • ebergerly said:

    In fact, there's a checkbox for the emission object where you can select to make it visible or invisible to the camera. And the results are perfect. The render below has an emissive plane right next to the fighter thingy

    Cycles is not Iray, or is this using Iray in Blender?

  • DustRiderDustRider Posts: 2,739
    edited December 2017

    Most unbiased (or primarily unbiased like Iray) render engines have this problem, as they are designed to mimic real world light. In the "real world" the only way to hide a light from the camera is to keep it out of the cameras view. At some point Iray may include similar lighting cheats, but this is a common problem with most "pure" raytracers, or highly unbiased render engines. (Note: While Cycles does make heavy use of ray tracing, and is considered to be PBR compliant, it is most definately a "biased" reder engine as it includes many features of biased render engines.)

    Post edited by DustRider on
  • gibrril_fa945a6ceegibrril_fa945a6cee Posts: 544
    edited December 2017
    DustRider said:

    Most unbiased (or primarily unbiased like Iray) render engines have this problem, as they are designed to mimic real world light. In the "real world" the only way to hide a light from the camera is to keep it out of the cameras view. At some point Iray may include similar lighting cheats, but this is a common problem with most "pure" raytracers, or highly unbiased render engines. (Note: While Cycles does make heavy use of ray tracing, and is considered to be PBR compliant, it is most definately a "biased" reder engine as it includes many features of biased render engines.)

    That's how I solved my issue now... Move the lights out of the camera's view... Since I'm batch rendering multiple frames as an image series, this is very limiting to what I can do with the camera though...

    Post edited by gibrril_fa945a6cee on
  • DustRiderDustRider Posts: 2,739
    DustRider said:

    Most unbiased (or primarily unbiased like Iray) render engines have this problem, as they are designed to mimic real world light. In the "real world" the only way to hide a light from the camera is to keep it out of the cameras view. At some point Iray may include similar lighting cheats, but this is a common problem with most "pure" raytracers, or highly unbiased render engines. (Note: While Cycles does make heavy use of ray tracing, and is considered to be PBR compliant, it is most definately a "biased" reder engine as it includes many features of biased render engines.)

    That's how I solved my issue now... Move the lights out of the camera's view... Since I'm batch rendering multiple frames as an image series, this is very limiting to what I can do with the camera though...

    You might be able to parent the light to the camera, then as the camera moves, so will the light. Not sure if this will work for your situation, but I thought I might suggest it in case it does.

  • ebergerlyebergerly Posts: 3,255
    edited December 2017

    There is an LPE (light path expression) in D|S iray to block any light from the emissive from being seen by the camera, but as Dustrider says it results in a black spot where the emissive is, because the camera can't figure out the lighting if that area is blocked by the emissive. Although FWIW, you do have to remember to zero out EVERY surface feature of the emissive aside from the emissive setting, or the camera might see it. 

    There may be an LPE where you can make the emissive effectively totally transparent to the camera so that the camera can see past the emissive and calculate the effects, but I haven't found it. I'm guessing that's how developers got around the issue...make it emissive, but totally transparent. Which comes back to the question, why can't an emissive in D|S be made TOTALLY transparent AND fully emissive?   

    Though IMO it's kind of irrelevant if it's considered a "cheat" by some to figure out how to render the area blocked from the camera. The fact that Blender and others have figured out a way to work around that means it's do-able. And unless you're a professional working for Dreamworks, I think any cheat like that would be fine for most (all) of D|S users. 

    LPE.PNG
    1463 x 887 - 1M
    Post edited by ebergerly on
  • ebergerlyebergerly Posts: 3,255
    edited December 2017

    Y'know it also occured to me...on the right of the emissive in the above image is another light, but it's a spotlight. And you can't see it. And if it's selected as an emissive "disc", there's a button to turn on/off "Render Emitter", and you can't see the disc but the output illuminations stays the same. Which is exactly what we want. Heck, the feature is there for the stock emissives, why not the user-made ones? 

    On.PNG
    461 x 785 - 605K
    Off.PNG
    511 x 748 - 612K
    Post edited by ebergerly on
  • ebergerlyebergerly Posts: 3,255

    And here with two identical emissives side by side...one user made, and one stock. You can turn off the stock one, but not the user one. 

    Emitter.PNG
    1094 x 870 - 1M
    Side by Side.PNG
    1180 x 835 - 1M
  • ebergerlyebergerly Posts: 3,255

    Maybe that's the answer....since you can control the size and shape of the built in emissives, along with flux and temperature and angle and so on, maybe just use the built in emissives instead of making your own. And turn off "Render Emitter" so you can't see it. 

    Or am I missing something? 

  • Thanks! Where can I find these "stock" emissives and wheredo I find the "render emissive" setting? May sound like a noob question, but I'd still like to know :)

    Thanks a lot,

    Me

  • ebergerlyebergerly Posts: 3,255

    Just go to Create/New Spotlight on the top menu. Then under the Lights tab you'll see all the settings. 

  • I did suggest using a light with a shape and render emitter off above - and also pointed out its potential drawback, that it will show if viewed through a transmapped surface (such as hair).

  • I did suggest using a light with a shape and render emitter off above - and also pointed out its potential drawback, that it will show if viewed through a transmapped surface (such as hair).

    I must have missed that, sorry... Thanks for the tip!

  • jag11jag11 Posts: 885
    ebergerly said:

    ... There's no good way to make an object emit light while being unseen in the render. ... 

     That is incorrect, you can make an iray material emit light on one side and being transparent on the back side.

  • ToborTobor Posts: 2,300

    Careful with calling the built-in light types -- spot, point, and distant -- "emissives."  Internally, similar things may happen between an emissive (created using Emissive Distribution Functions in a shader) and those from the prototype light types. But outwardly the light from an emitting mesh and a built-in type is different in ray dispersion. Emissives produce a diffuse lighting (unless you use a light profile), which changes the characteristics of shadows and highlights.

    I'm curious why we've been using "ghost lights" for a couple of years now, including the emergence of several popular lighting products from the Daz store, and yet this issue of noticebly diminished light output has come up only recently. Either there's some change in the latest versions of D|S, or people are not using the shaders "correctly" (correct as it relates to being a pure emitter for illuminating the scene).

    See the following documentation (not updated in a while) on how Iray differentiates between EDF and scene light types (Iray defines its LIGHT_INFINITE type as the D|S distant light).

    https://www.migenius.com/doc/realityserver/latest/resources/general/iray/manual/index.html#/concept/lights.html

  • Tobor said:

    I'm curious why we've been using "ghost lights" for a couple of years now, including the emergence of several popular lighting products from the Daz store, and yet this issue of noticebly diminished light output has come up only recently.

    It hasn't come up because people set up ghost lights from the start, they don't set up a normal light, fiddle with all the emission settings, then convert it into a ghost light.

  • ebergerlyebergerly Posts: 3,255

    Yeah, this whole thing is strange. In Blender you check a box and an emissive becomes invisible. So it can be done. And you can do it in D|S. Maybe there are some technicalities about how this is done, and maybe technically the emissive isn't emissive, or whatever. Anyway, from now on I'll use the built in emissive, test it against a user-made one and see if it matters. I'd much rather push a button than go thru all this craziness. 

Sign In or Register to comment.