Realistic Looking Indoor Lighting
I have been working on some indoor scenes and trying to figure out how to light them to get realistic looking lighting. I have tried a lot of different things based threads I have read here and on my photography experience. Some things did not so at all as I expected, but I have found some things that are giving me pretty good results. I'm posting this thread to share my ideas and look for suggestions on how to improve the results.
The scene I'm using for this discussion is shown below. This is Michael 5 and Victoria 5 in the Media Room of the Dream House. They are actually sitting in the back of the Media Room, which has some funny shaped ceilings. There are no lights added in the image below. This is just the DAZ default lighting. Render time was 11s.
All renders in this thread were done with "Shading Rate" set to 0.2 the "Shadow Samples" set to 32.
Comments
It actually is not that bad, just a little dim.
The first thing I decided to try was the UberEnviroment2 light. I added the base light to the scene and the 4xHi quality preset. Then I changed the mode to “Ambient”. Render time was still 11s
Well, that was a disaster. That lighting is not even good enough for bad comic books. Clearly not what I want at all.
The next thing I tried was to change the mode to “Occlusion w/Soft Shadows”. Rendering time went up to 1 min 17s.
That looks pretty dark. If I boast the “intensity Scale” to 1000%, then I get something like this:
Not as dark, but horribly noisy. At this point I was not using a HDRI image on the UE2 dome. The dome is outside this room. The dome is lighting up the outside of the Media Room set, not the inside. The only light that is getting inside is coming through the window.
I tried scaling the UE2 dome to be inside the room, but that did not seem to help. I tried putting the kitchen HDRI preset on the dome. That didn't help.
At this point I decided UE2 doesn't work very well for lighting indoor sets, or at least I have no clue how to use it for indoor sets. I decided to move on and try some other kinds of lighting.
The first thing I tried was to add Linear Point Lights (LPL). These are sort of like regular pointer lights, but much more powerful and you can control how far the light extends. I placed 3 LPLs in a row left to right and in front of Michael and Victoria and 2 LPL lights behind them. I put the lights well above their head levels, but not all the way up at the ceiling. The location of a LPL will not show in the render, unless it is right next to something to illuminate. In this case none of the LPL are actually in the render. I only put 2 behind them because of the room is narrower behind them and there was not room for another.
I tweaked the intensity of the lights. Finally ended up using around 40%. I left the Falloff Start at the default 33. I set the Falloff End at 1000, so the lights would overlap a lot and even out the lighting. This is the result. Render time is 11s.
This is amusing to watch, in a good way :)
I recognize the struggeling with lightening and feeling lost in all the possibilities...
This is starting to look like real lighting. The faces are still not lite very well. The LPL lights are set not to cast shadows, so we don't really get the shadows you would expect from overhead lighting. The next thing I tried was turning on ray traced shadows on all the LPL lights. Ray tracing all those shadows did not come cheap. Render time jumped to 4min 49s.
Now we have got shadows. Too many shadows in my opinion. All these shadows going in different directions looks jarring. Not what I am looking for. After some experiments I decided to only allow the light nearest the window in front of M5 and V5 (camera right) to cast shadows and turned the shadows off on the other 4 lights. Render time improved to 1m 3s.
These shadows look more pleasing to me, but they still are too hard. I would expect softer shadows. There is a “Shadow Softness” on the LPLs and you don't have to set it very high to get nice softness. Below is a render with “Shadow Softness” at 5%. Render time was 1m 34s.
This is starting to look pretty good. The one thing I don't like is the faces of M5 and V5 are kind of dark. They are being illuminated from above, and they just don't have any pop to them. That can be a legitimate choice for how you want to light the scene, but I would like to liven it up a bit.
There are several approaches I could take to this. I don't really want to to increase the intensity of the LPL lights because they will start to blow out the white walls. I could add one or two spot lights to light up M5 and V5 or perhaps just their faces. That can be effective, but it can also look artificial.
The approach I took was to add a UberAreaLight Plane (UALP). The UALP acts like a light, but it is really a sort of light emitting surface. DAZ does not treat it as a light. You have to go to the Surfaces tab to control the light. The UALP acts like a soft box. It will cast soft shadows if you have it reasonably close to your subject, but I used it in a way you could never use a real soft box. I put it around the camera, with the camera poking through the UALP. I moved the UALP to the same X, Y, Z as my Camera. I rotated it to the same y-rotate and z-rotate. The x-rote was set plus 90 deg from the camera.
The main quality knob on the UALP is the “Samples” property. I set it to 64. The default is 8. I set the intensity at 50%. The UALP has a fall off feature too, although it is off by default. I turned it on and set the Falloff start to be just behind M5 and V5, and the Falloff End just a little father. This allows me to abruptly cut off the light from the UALP to illuminate M5 and V5, but not the walls or other objects behind them. The result is shown below. Render time was 5m 50s.
I'm pretty happy with this result. I think this lighting looks realistic for an indoor scene, and it gives the main characters some pop without looking artificial. The UALP adds quite a bit to the render time, but I think It is worth it.
If you want to reduce the shadow under M5's chin more, you could re-introduce the UE2 light set on ambient mode with the intensity in the 10-20% range. Below is the image with UE2 set at 10%. Render time was 5m 40s.
The ambient light lowers the contrast a little and perhaps makes the image more appealing. It is a matter of taste.
So this is as far as I have gotten with lighting this kind of scene. I'm pretty happy with the result, and the render time is not too bad for this simple scene. I deliberately put short hair on V5 to keep the render time down. Long hair will drastically increase the render time.
I am open to suggestions for tweaks or whole different approaches that might give even better results.
I always add color to the lighting.
Just a tiny shade of orange/yellow or green/blue makes a notable difference.
Your problem with UE2 using occlusion was the trace distance - by default it's too high for interiors, meaning that the walls block all of the light - lowering it to something like 100 or less would allow occlusion from the furnishings and figures without killing all of the lighting.
Actually, I added some color to the UberAreaLight plane. I used 255, 225, 215, which is light pink to put some color in the figures. The UALP is only contributing some fill, so the effect is not that obvious.
I tried adding a little color to the LPL, but the white walls picked up the color and I did not like that. I left the LPLs white. I set the fall off on the UALP so that none of its light reaches any of the walls you can see in the picture.
One thing I forgot to explain is why I positioned the UALP around the camera. I wanted the UALP to act like fill light to boast the lighting on the main figures. I didn't want it to introduce new shadows. Because of the size of the UALP it should only create soft shadows, but by placing it around the camera, the camera will not see any shadows created by light, but it will light the surfaces the camera can see. You can do the same thing with a spot light.
I reduced the trace distance to 100 and tried again with only the UE2 and set to occlusion soft shadows. The result below is much improved over the ambient mode image, but it has issues. I could certainly brighten up M5 and V5, but I'm not sure how to make the wall illumination more even.
I tried mixing this lighting at 10%-20% with my LPL and UALP lighting, but it did not seem to fill the shadow areas as much, which makes some sense since occlusion is suppose to be creating those shadows.
Here is a picture where I replaced the UALP around the camera with a spot light that is at the same location and pointed in the same direction as the camera (something you cannot do with physical lights and cameras). I used the same slightly pink color and 50% intensity. There is no UE2 ambient light in here, so it should be compared with the image above before I added UE2 ambient.
The main difference I see is the spot light has blown out the walls, especially behind V5's head. The spot light has no falloff ends feature, so you cannot limit the illumination of the walls behind. The extra control of the UALP however comes at a price. The render time on this image with the spot light was only 1m 33s compared to 5m 50s with the UALP. (Note I may have cranked the samples up higher than needed on the UALP. I had it at 64.)
Objects like walls etc, can be set to not cast shadows which allows the light to pass through them.
I haven't tried lighting, but the question begs- "How?" Is it something easy to find and do?
As long as they are separate objects the casting of shadows is a setting in the Parameters pane - if they are part of a single item then it takes a special shader to be able to turn shadow-casting off.
Thanks, I hadn't run into this and would have been scratching my head probably when I did.
I'm guessing here, depending on the surface one wants to pass light through, one could use the surface selector, make that surface invisible and replace it (with a primitive plane for instance) that could then be set to not cast shadows. This would only work where one could feasibly replicate the area to pass light through ofc.
On a separate note, I just had a thought. There has been an ongoing debate for (forever) on what to do when a 'feature' doesn't apply in a given situation. Does the developer just remove that from the menu or, grey it out. Neither one addresses the problem of someone trying to understand 'why' a feature isn't available and this has been at the crux of the problem. What just occurred to me was, a developer could have the option grey out (when possible, sometimes this isn't an option) and have it so if someone clicks on the greyed out link, instead of getting nothing, it popped up a best available info box on why the feature wasn't available. Then, to allow advanced users to streamline their interface, have a feature in the preferences that allowed the greyed out menu items to just not show at all.
I just wanted to jot that last item down as it has been a bugaboo forever and I haven't heard a solution to it, so wanted to put it down before I forgot it. (I'm big into usability.)
:)
I'm confused as to why I would want light to pass through my walls.
Is this so the outside light gets into my indoor scene?
Will the light really pass through the wall even though the opacity is set to 100%?
Does this apply to ray traced lights, like distant lights that are set to cast ray traced shadows?
Does this mean both the light and the object have to be set to cast shadows?
It is common to set a ground plane to not cast shadows, then put a 'bounce' light under the ground pointed up to illuminate from below similar to a box light in a studio. Unlike a studio one has much more flexibility in where the light is put, so a single light can evenly light an area that a single box light couldn't in real life. If the outside surfaces that don't need to cast shadows are set to not cast shadows, then one can use global illumination type techniques to more easily set a base ambient level and then use other lighting to sculpt the lighting to the scene. Basically, ambient light is not correctly accounted for in 3DLight. I'm not blaming the render engine but it's the case. We have to create our light environment, and it doesn't exactly mimic nature so we have to learn the engine and work with it. This actually has an advantage in that once we do learn how to work with the engine, we have much more creative freedom then if it did mimic nature and didn't allow us to manipulate the light envelope to the extent we can in engines like 3DLight.
Another issue is, any surface that we don't need to cast shadows, if we turn cast shadows off for that object/surface it is supposed to speed up render calculations as the engine doesn't have to take that into account for that surface/object.