Damian Stempniewski is a Senior Lighting Artist currently working at Finnish game studio, Remedy. His breadth of work spans projects including Gears of War: Judgment, Dying Light, and Robinson: The Journey to name a few. David has provided us with some valuable tips for properly lighting a 3D scene, and we're thrilled to share them with you. Check it out:

1. Start with a Skydome

Sky has big impact on overall lighting and mood of environments. It's best to have it in the scene as soon as possible; most of modern engines can capture ambient lighting directly from the sky, allowing to get much richer ambient as opposed to old flat colored skylights. I prefer using HDRI skies as a base, as it helps me establishing realistic look of the scene. You can use resources available online, or just grab the camera and capture them yourself. It's worth testing various skydomes and compare how they react with geometry, fog (if engine supports it) and how it affects the mood of your environments. Once you get more proficient with the process, you'll be able to get the first results really quickly and be able to communicate it with rest of the team and set solid base for next steps.

Simple outdoor lighting using different sky and sun settings + global environment probe used for reflections and ambient.

One of my overcast scenes in Cryengine was lit only by environment probes using sky as a lightsource.

2. Don't Fix Bad Art With Lighting

It is common saying that lighting can either improve quality of the scene or ruin even the best one if used incorrectly. However, it shouldn't be used as ultimate solution for unpolished art. It doesn't matter if you're making a more stylized or photorealistic game - spending a moment on tweaking all scene components will save you a lot of pain of reiterating. Working with bad materials may affect the lighting significantly - which either way will negatively affect your scene. Make sure the albedo maps consist mainly of color - remove obvious lighting information (and if the engine can handle that itself - remove it completely) and make sure that values match real world materials - you can easily find PBR charts online - use them! It pays off in the end. Same idea applies to light sources - start with more natural color temperatures, intensity etc. However, during the production you may notice that even the most realistic lighting will still need some adjustments; for example – you might have to even out lights intensity in areas where it causes too aggressive auto exposure change - affecting the visibility, often making it annoying for the players, or you may just simply need to adjust it to help the gameplay. It's nice to be aware of that and sometimes step away from reality, however it’s better to do it once you know that the correct approach is not working out for a specific case. I recommend to look for reference in cinematography, where there are often many tricks used to adapt real world lighting for artistic needs. Once your initial lighting and material setup is done, you can start adding some light helpers to create more cinematic setup, exaggerate bounce lighting in certain areas or highlight gameplay path if the "traditional" solutions don't work.

Often when lighting gets too complex, I like to work using "lighting only" mode which consists only of middle grey albedo allowing me to tweak a bit trickier spots in the level without being distracted by complex materials.

3. Optimization

One of the biggest challenges is to maintain good visuals within platform limitations. No matter if it's PC or console, you want to make it playable on as many configurations as possible. The lighting budget may depend on the project and engine; for runtime lighting (e.g. CRYENGINE) you may want to keep in mind things like overlapping dynamic lights count and local probes in the scene, dynamic shadows resolutions, or type of lights (for example: shadow casting omni light may be more expensive than shadow casting spot light, but at the same time spot light generates more drawcalls and takes some texture memory for projection maps); for prebaked lighting (lightmaps, voxel GI) another factor is video memory. It's good practice to set some separate budgets for things like lights, fog, particles and geometry, so it's much smoother to control it during optimization.

Recent VR projects like Robinson: the Journey and The Climb demand more processing power for stereoscopic rendering; it means that we had to give up on some features like Global Illumination or volumetric fog; all the indirect lighting was faked by hand placed point lights and environment probes. It was huge team effort between many departments and the end result is still quite satisfying regardless of limitations.


CGSociety thanks Damian for providing these incredibly helpful tips!