Global Illumination: What settings really 'matter'

Hello,
I’m in the process of figuring out lighting. I’ve read through the documentation, but still don’t have a great grasp on what values (and where they should be changed) that make a big difference. I’ve seen a few scenes that are lit by only one light that look great, but I’m not sure where to start to achieve nice GI.

So what options and values should I be manipulating to achieve good GI?

I already have a lightmass importance volume and one static directional light, this is my result after building ligthing.

Thanks in advance!

**EDIT
Found this useful doc elsewhere and has a good section on GI, and values to mess around with.
[here][1]

Hi ArchVizVR,

I see you found the doc that Eric and I wrote for the Wiki to help with some lighting setups and issues.

If you have any questions feel free to ask. I am happy to help if you have any specific questions.

Thank you!

Tim

Hi Tim,
Thanks for all of your guys hard work on these docs. I’ve seen you around plenty when researching these things. My understanding is at a much higher level because of you.

As far as my progress, Things got lit better w/ the help of the wiki, but there are too many shadow and light artifacts that make my scene too harsh. I think my problems are orbiting around light maps. I was hoping I could rely on the ue4 generated light maps, but they don’t seem to hold up too well.

As is stands, I don’t have the luxury(or 3ds knowledge) to work on a scene (aka light maps) for weeks to tweak to perfection (all my scenes would be for visualization, and can iterate drastically at times).

I’m going to move onto testing LPV and see what happens. Hopefully it isn’t going to be too taxing for VR applications.

Understandable on the quick iteration times, especially in archviz.

Lightmaps and UVs is just as much an art style as setting up the mesh itself. It can sometimes take a lot of tweaking to get right, sometimes it just comes together without much issue.

Some things that may help:

General things:

  • Adjusting the lightmap for a higher resolution, may help curtail some of the artifacts you’re seeing.

  • In Max I have the ability to set the grid spacing in the UV editor so that I can snap hard edges to a grid size I specify. For example, If i know I want to use a 1024 Lightmap resolution I would use the formula 1/1024 = 0.0009765625. I would then snap my hard edge seam to this grid line. I would leave at least a 2 pixel spacing between other UV islands. If the mesh is stretched or squished a little this will not have any impact on the way the shadows bake to the mesh.

  • Adding a Post Process volume, and adjusting the Global Illumination tab settings can really help in some scenes to get better lighting. I personally feel this is a really under valued and under used option in UE4.

World Settings

  • Adjusting the Indirect Lighting Quality to a higher value like 4 or 6 (will have to type in anything above 4)

  • Adjusting Indirect Lighting Smoothness to a lower value when adjusting quality up. Try something in the range of 0.5 - 0.75. May need to play around with these values to see what looks best for your scene.

  • Try increasing the Light bounces. The default is 3, but trying something between there and 100 can get better results as well.

  • Also since you’re using an ArchViz scene adjusting the Lighting Scale can provide tighter results that can help. The default is 1, but lowering it can really help as well for any indirect lighting seams and artifacting issues. I really don’t recommend this for most things, but it may be useful. I’ve not used it with any VR projects, so there may be additional implications there that I’m not aware of. Really it should only increase the light build times significantly because lowering the value is going to build better quality lighting because the scale has been lowered to be more precise.

  • Environment Color can provide better results, when it’s not set to black. Something like a dark grey or white/blue-ish can provide better coloring for shadows as well.

Light Propagation Volumes

  • There is a known issue right now with LPV not working in the right eye of the oculus rift (UE-9765). It’s still listed as “in progress” for getting a resolution.

  • 4.9 had a few improvements go in that were from Lionhead Studios. These will be available when that release.

  • You’re still likely to get a light leaking, but this is just the nature of how LPV works. It’s not the most accurate method.

This is about all I have at the moment. Let me know how it goes and if you have any follow up questions or concerns. :slight_smile:

In general, I’m trying to avoid creating lightmaps at all. My scenes all have very unique meshes (often only use once for a particular project). So it doesn’t make sense to spend the time for a mesh only being used once. All of my scenes originate in Revit, which themselves aren’t the most tidy models which complicates UV editing.

“Try something in the range of 0.5 - 0.75. May need to play around with these values to see what looks best for your scene.”

“Also since you’re using an ArchViz scene adjusting the Lighting Scale can provide tighter results that can help.”

“Environment Color can provide better results, when it’s not set to black. Something like a dark grey or white/blue-ish can provide better coloring for shadows as well.”

I’ve given most of the suggestion a try already, but I haven’t messed with the quoted tips above. I’ll give it a shot.

“There is a known issue right now with LPV not working in the right eye of the oculus rift” :open_mouth: Bummer!
We are only at 4.8.2 right now, any idea when 4.9 may be cut loose? Month or more I assume?

As always, thanks for helping out.

Tim,
I was looking at the tool ‘Flat Iron’. They talk about rendering a whole scene to texture. Textures/materials & lightmap for the whole scene.
I’m assuming it would be possible to render a nice ‘smoothly’ lighted scene texture and apply in ue4 (materials & lightmaps)? You wouldn’t have to deal with baking your own lighting after that correct?

This could probably be useful in controlled situations, however the problem that you will have, depending on the scene size will be the quality of the texture that will represent your lightmap. The larger the scene this can be more problematic. The largest texture size that is supported by UE4 is 8192 (GPU limitation, if I’m not mistaken). Even if you’re just using the UVs so that UE4 can bake the lightmap this may work OK, but again, that would depend on the size of the mesh that is being packed into the 0,1 UV space. If you’re using the texture generated from this as a lightmap source it would just need to be set in the material. There isn’t a way to assign a specific lightmap texture in UE4 in this way. I’d suppose the way to do this would be to set up an unlit scene in UE4 and run the lightmap texture material through the emissive, but I’ve not set up anything like that specifically so I can’t say for certain without testing it myself.

Looking at the website it looks like they have a trial, so it may be worth a test to see how it works.