...This suite of tutorials is largely aimed at pre-UT3 versions of the Unreal Engine. However, some of the information, particularly in the 'Theory' section, is universal regardless of the Engine, or game, used.

If you're a level designer interested in learning more about lighting, I'd reccomend reading through the entire work.




4) Basic Lighting Techniques: Getting your hands dirty

The necessary contrasts are not listed within the color values; that would be too simple. In fact, the diverse parameters in a Light Actor contain many possible sources for contrast. You are not supposed to rely only on the color (which corresponds to the Hue and Saturation properties) but also their Brightness and Radius. In the first case, one could juxtapose great differences in brightnesses or, in the second case, juxtapose Light Actors with very different Radii. It goes without saying that you can, of course, mix these contrasts to obtain even better ones (and it is strongly advised you do). Thus, for example, a Cyan Light Actor with a high Saturation, a high Radius, and a low Brightness would contrast an Orange Light Actor with low Saturation, low Radius, and high Brightness. This would also apply to the other colors, and their respective complementary hues.

Even if the most instructive knowledge base is Classical Art History (don’t be afraid to go to a museum to closely study the masters, or spend time surfing sites that specialize in reproductions, which you will easily find thanks to Google…) it is not absolutely indispensable to master this domain in order to become a competent artist. Most of the official maps will suffice; some examples:


DM-Goliath: the archetype of ‘pure’ primary and secondary light colors because the Blue/Cyan is directly opposed to Orange. This is a harmony of colors often seen in cinema, particularly in those with dark atmospheres. Here, the primary colors are directly juxtaposed with the corresponding secondary colors thanks to the very achromatically chosen textures in a particular package. During UT99’s time many amateur level designers used very neutral texture packages – with the Richrig package at the top of the list - in order to light their levels in the colors of their choice (see DM-1on1-Trite for another example drawn from UT2004). This technique is effective and perfectly respectable, but there is a certain ‘ease of execution’ that rarely satisfies a proper artist. Once you’ve used it a few times, you will certainly want to try something else and experiment with different combinations where your personal taste will have more room to grow.


DM-DE-Osiris2: See how the yellow-orange ambient light is strong (with a high Radius and Brightness) opposed to the green nuances that are more specific and discrete. Also note the contrast is subtle; with the general yellow-orange tones, the complementary colors should be between Violet and Cyan, however the author chose Green. The reason is simple enough. The textures within the packages that contain the Egyptian-theme are composed primarily of materials in yellow, sandy colors – ‘warm’ colors because of their resemblance to colors in flame. Opposed to which the Cyan and Azure tones – ‘cold’ because of the opposite of ‘warm’ explained above – generally function badly. Why? Because these textures, the Yellow-Orange, contain little Blue and therefore cannot reveal these colors when lit. It would result in a ‘dirty’ color that would be less attractive. Therefore the choice of Green becomes essential because its origin lies with the blend of Cyan and Yellow (see the Color Circle). And this same Yellow is the dominant color in textures using the Egyptian theme: the interaction between a Light Actor and the texture it lights works better when they share a common tone as shown in the above screenshot.


Finally, DM-Insidious. In spite of its simplicity in terms of layout, and therefore gameplay, its lighting qualities are very interesting due to their variety. Especially so since they contradict many of the recommendations that I have explained thus far – but I would probably not be the first to say that art is not an exact science. Regard how the Red in the central lava pits is radically and directly opposed to the Green of the cloning tanks on the left, and also regard how the curved walls on each side of the screenshot are lit by a pale Purplish-Blue. The texture package used is dominated by Chestnuts and Ochres with, discrete, more or less, points of Orange and Green. Recall what I said about Chestnut: this ‘color’ is the sum of all the others in equivalent quantities in the CMY spectrum. This allows the author to use a wide variety of colors in the same location. In fact, one can find all the major colors of the RGB spectrum in this one zone of the level. Of course, the dominant Green is clearly distinguished from the Blue and Red due to the intensive use of DistanceFog.

Note: Not for nothing is Green so often used when taking into account its position in the RGB spectrum: indeed, located halfway between two extreme colors, it supplements them both without creating a ‘violent’ contrast in a spectator’s eyes. If you are hesitant about choosing a color, Green is often an ideal candidate in many situations.

Notes:

- Choosing the number of colors to use in a level is often difficult. Too few, and there is a lack in contrast; too many and the eyes begin to object. Personally, my preference is three (an important figure for all creative outlets, at least in the field of Pictorial Art). Two complementary colors and a third, more sporadically placed, to introduce some variety. I have already given examples of levels using fewer than three colors (DM-Gestalt and DM-Icetomb) but you will find this is the exception rather than the rule. At any rate, I strongly recommend that you do not exceed five, of which two will certainly be very specific (ie. with low Radii). Of course, it goes without saying that tonal differences obtained by simple saturation changes are not, strictly speaking, different colors (a pale Yellow is barely distinguishable from a darker shade of Yellow) but a Yellow and Orange – only one example, I could easily choose Blue and Green, or Red and Purple – are obviously two different colors.

- Light sources should match the Light Actors. For each Light Actor in the level, there should be a reason for the light to exist: either through a texture indicating a light (in UT99, for example), or a static mesh light (for UT2Kx). It could be a normal lamp, a sign over a store, or even a computer console. Do not hesitate to note the objects that surround you in everyday life to observe how they produce light and can thus inspire you to develop lighting ideas. Of course, it is also strongly recommended to study the levels provided by the game itself. However, opposed to what certain level sites and review sites indicate, it is not always necessary to have a light source paired with each Light Actor in a level. Sometimes a simple lack of light in a zone can lead you to use a Light Actor which does not correspond to any obvious source, especially when simulating radiosity. What is that then? I’ll tell you…


5) Radiosity: Reproducing ‘bounce’ light

Light doesn’t light only the objects it touches: its rays travel from the source, to the objects, and then are reflected back until they reach your eyes, which enables you to see them. But it is not truly that simple. Light rays ‘rebound’ all over, like a squash ball, and each time, they lose some of their color based on the object from which they are being reflected. Certain rendering methods can reproduce this highly complex mechanic, but it is not yet possible in real-time because such a process consumes enormous calculation resources with a lackluster result; especially when there are ways to simulate this with more or less success depending on your control over the subjects.

Here is an example from DM-Injector:


In the red circles, the Light Actors generate the principle lighting placed, as they should be, near the source (here the ‘blue neon’). In the green circle, a third Light Actor reproduces the reflection of the basic blue light on the immediate area around the neon. If you look at the properties of each of the Light Actors in UEd, you will see that their color properties (Hue and Saturation) are practically identical (Hue = 150 instead of 153 for the Light Actor in the green circle), but their Brightness and Radii are less than half that of the one in the green circle (112.5 and 36 for the green Light Actor, and 300 and 18 for the Red, respectively). These variations are explained by the fact that the more often light is reflected, the more it loses its luminosity (Brightness) on each object as more light is absorbed. On the other hand, the quantity of the remaining light is spread across a wider surface, proportional to that which came from the initial source, expressed here by the Radius property.

A small explanatory diagram of this principle:


A light in a cubic room as seen from the side: On top, the primary light source (a normal ceiling light), with a Light Actor (1) that represents the light emitting from the light source. Directly below, at ground level, a second Light Actor (2) reproducing the reflection of the light from the primary light source on the ground. Finally, on the side walls, two other Light Actors (3) that share the same properties and represent the light reflected by the first reflection (2) onto the walls. The size of the arrows and their color represent the light’s path and the loss of its Brightness, and their quantity indicates the Radius of the lights as it becomes more diffused after each reflection. Of course, this is only a diagram; you are not required to use this exact number of Light Actors for each light source. In fact, most of the time, two are mostly sufficient, and more than three can quickly cause your level’s lighting to become a nightmare. But more importantly, their impact on performance will be prohibitory. Keep things fairly simple, it’s complicated enough already.

Note: The loss of light in the diagram and in the DM-Injector example is over-simplified; it’s only one aspect of the principle. Indeed, it is usually not enough to simply modify the Brightness and Radius properties to obtain a good radiosity simulation. In fact, the reflected color depends on the color of the material on which the light is reflected. For example, a White light reflecting off a Red wall will be almost exclusively Red, or Green if reflected off a Green wall, or Blue off a Blue wall. Somewhat unfortunately, the texture packages seldom use uniform colors – often this is what distinguishes good textures from bad, but this is not the level designer’s problem. This means that a ‘realistic’ radiosity simulation would rapidly become a nightmare. To simplify the property settings I propose you modify the color of the Light Actor by obscuring it quite simply: this can be done by choosing a similar color tone but of a slightly different Hue (for example, blacker) or by choosing a color closer to Red or Blue along the RGB spectrum, according to the initial position of the basic tone. (Thus a Yellow light would reflect a more Orange color, an Orange a more Reddish-Orange, a Green a more Greenish-Blue, etc…) People whom, like me, come from a pre-rendered 3D background know these tricks well and we have each developed our own techniques: it’s up to you to create your own…

Note: The quantity of light reflected by a surface depends entirely on its roughness; the smoother a surface is the more light it reflects. This is because the less smooth a surface is the more ‘chaotic’ it is, at least at the atomic level. This will reflect light in more directions as the light touches more ‘peaks’, and the spaces between the peaks, where it will lose more and more brightness and colors without leaving the surface, instead of returning all in the same direction. Thus glass, being one of the smoothest surfaces reflects, almost all the light it receives. Contrarily, rough wood, for example, reflects very little light and must be varnished to achieve any sort of reflection. It’s useless to state that this optical mechanism plays a paramount role in the Level Design process; a very new or wet environment will probably be very luminous whereas an older environment, rusty and mildewed, would certainly be darker.

The Easy Way: Experienced Designers often use two Light Actors for the same principle light source: the first with ‘normal’ properties, and the second with the same color but placed a few units beside the first and with a Brightness two to four times less, and a proportionally increased Radius. This trick makes it possible to obtain the effect of very diffused lighting by softening the luminosity. Moreover, placing both Light Actors close together makes it possible to avoid overlapping shadows – an unquestionable ‘defect’ in environmental realism – but also makes them fuzzier and thus more ‘true’ because exact shadows are practically absent in nature.


6) Advanced Techniques: Special Cases

a) Lightboxes:

When you place a ceiling light in your level, its light on the ground and the immediate environment can be achieved through particular settings, and is strongly advised. Opposed to numerous claims (which I largely contribute to the propagator, mea culpa, mea magna culpa) it is not DavidM who invented this trick, but is CliffyB, proof of which is in his Unreal Tournament Level Design Musings where he explains rather summarily “You can use CYLINDER lights to create nice sharp circles of light on the floors and ceilings of your maps, but don’t depend on them. They tend to light player actors very poorly. Try to use a combination of regular lighting and cylinder lights in special areas.” Basically, the trick consists of using a series of two to three Light Actors laid out vertically under the ceiling light. The different property settings will allow you to reproduce the famous Lightbox effect, improperly named because it reproduces more a cone of light rather than a box.

Here is an example from CTF-December:


Even if DavidM did not invent this trick, then he certainly popularized it, among other things, by developing a method with precise properties which you will find in detail (for UT99, but is easily adapted for UT2Kx) on his personal site.

An interesting alternative but underused can be found in DM-DE-Grendelkeep: LightEffect LE_StaticSpot makes it possible to create a light cone in a strict sense, Set the Light Actor’s properties as such:

- Light Properties -> Advanced -> bDirectional = True and point the small arrow that appears toward the ground.

- Light Properties -> Light -> LightEffect = LE_StaticSpot and you should see the light reduced to a circle on the ground. Modify the Radius to change the size of the light circle – as if it was the Brightness – and do not forget to place a second Light Actor on the ground to simulate the reflection of the light on the environment as previously explained.

It goes without saying that this trick is not exclusively reserved for ceiling lights. There are many possible applications. It’s up to you to explore them.

b) “Red Lights”:

Once again, something that is incorrectly attributed to DavidM: these have existed since at least Quake 2, and one can find many examples in Unreal 1 and UT99. They are often used in industrial or futuristically-themed maps, especially in dark corners – even straight-up black – where they function best. Here are their properties:

- Brightness = 200
- Hue = 0
- Saturation = 0

- Radius = between 6 and 10 (this last value is strictly interpretive, but try to avoid moving beyond it; pure red generally looks bad on large open surfaces.)

c) Static Spots:

This ‘alternative’ to Lightboxes makes it possible to represent projected light from a directional light source, as its name suggests, in a precise direction. Indeed, an error usually made in Level Design consists of placing a standard Light Actor at a light source that emits light only in a certain direction. A Light Actor emits light in 360° thus the walls around are also lit whereas the light rays from a directional source should be confined to one direction. For example, in DM-Rankin:


The problem is rather obvious here: the static meshes used to light this corridor obviously consist of pairs of fluorescent lights surrounded in a metal housing which should block the light around the fixture in reality. However, this is not the case: the beam which holds the ceiling lights is also lit by them. The choice of a different static mesh could have solved the problem.

Now, see how the Light Effect LE_StaticSpot can provide a much more credible variation: DM-Oceanic:


With the StaticSpot directed downwards and slightly facing the wall, and regulating its falloff, the level designer made realistic lighting by accounting for the selected light source; the Light Actor does not light the area behind the light source. Also, see how the light cones decorate the walls; without this effect, the walls would seem empty. Thus, this is an easy way to decorate certain zones in the level without using polygons or textures which use more resources, and can sometimes even obstruct gameplay. It should be noted that the author could have added a Light Actor against the wall in order to simulate the reflection of light off the wall towards the corridor’s interior.

This can be a way to think about light as you create your own static meshes. Attentively observe the light sources that surround you, in your home, for example, and you will become capable not only of using this method appropriately, but also able to create static meshes that allow you to exploit this better. In general, fluorescent lamps illuminate the area around themselves, since there are generally no obstacles around them – as seen in DM-Rankin – whereas normal lights are often placed to light a specific direction; even when there is a lamp shade that lets some weak light through, the greatest amount exits through the top and bottom. This prevents the light from being too dazzling and, in a way, it’s rather similar to halogen floor lamps which generally light a room by reflecting the light off the walls and ceiling, this is usually how professional photographers work: they never light the subject of their photos directly, instead they use indirect lighting to get a smooth and homogeneous light around it, even outdoors.


...Continued in Part 3: Special Cases