Lighting and Lightmap Baking
Local lighting -- point lights, area lights, and the baked lightmaps they produce -- is what differentiates a flat, uniformly-lit map from one with depth, atmosphere, and visual interest. The sun provides broad directional illumination, but interior spaces, underground areas, nighttime environments, and accent lighting all require placed light sources. Lightmap baking is the process that pre-computes the lighting contribution of every placed light onto the static geometry and stores the result in texture files. The baked lightmaps eliminate the need for real-time lighting calculations on static surfaces, which is essential for maintaining frame rate in scenes with many light sources.
This article is a procedural tutorial covering light placement and lightmap baking in the Unturned™ Level Editor. It describes the point light and area light placement workflow, the light properties (range, color, intensity, shadow casting), the lightmap baking process from start to finish, the quality settings that control bake time and visual quality, the estimated bake times for different map sizes, and the failure modes that produce lightmap seams and shadows not updating after a bake. The article assumes the reader has completed the object culling and static batching configuration in the preceding article.

Prerequisites
- A map with completed object placement and static geometry finalized. The editor must be open and the map must have terrain data initialized.
- Familiarity with the Lighting panel, the object inspector, and the move/rotate tools.
- Understanding of the difference between the sun (directional light configured in the Lighting panel) and placed point/area lights (local light sources).
- A target lightmap quality setting determined before starting the bake process.
What you will learn
- How to place point lights and configure their range, color, intensity, and shadow behavior.
- How to place area lights for rectangular illumination sources.
- How to position lights for effective interior and exterior illumination.
- How the lightmap baking process works and what it produces.
- How to configure bake quality settings (Low, Medium, High) and their trade-offs.
- How long a bake takes for different map sizes and light counts.
- How to identify and resolve lightmap seams between terrain sections.
- How to identify and resolve shadows not updating after a bake.
Background: how placed lighting and lightmaps work
The lighting system in Unturned™ uses two layers of illumination. The environmental lighting (sun, ambient, skybox) provides broad outdoor illumination. Placed point lights and area lights provide local illumination for specific areas. The lightmap is a pre-computed texture that captures the combined effect of all static lights on all static geometry. At runtime, the engine applies the lightmap to the terrain and static objects as an overlay, replacing real-time lighting calculations with a texture sample.
As shown in the flowchart above, the bake is a pre-computation step. After baking, the lighting on static surfaces is fixed. The lights themselves can still be moved or changed, but changes are not reflected in the scene until the next bake.
Point lights
Point lights emit light in all directions from a single position in the world. They are the most commonly used placed light type.
Placing a point light
Step 1: Open the Lighting panel by clicking the Lighting icon on the toolbar.
Step 2: Click Add Point Light in the Lighting panel. A new point light appears in the viewport at the world origin.
Step 3: The light is represented in the editor as a yellow wireframe sphere. The sphere's radius represents the light's illumination range.
Step 4: Select the light and use the move tool (W key) to position it at the desired location. For interior lighting, position the light at the center of the room at approximately 2-3 units above the floor.
On-screen appearance: The point light appears as a yellow wireframe sphere in the viewport. The sphere size matches the light's range property. The light does not illuminate the scene in the editor viewport; its effect is only visible after a lightmap bake.
Configuring point light properties
Step 1: Select the point light.
Step 2: In the inspector panel, configure the following properties:
| Property | Type | Range | Description |
|---|---|---|---|
| Range | float | 0.5-100 | The radius of illumination in world units |
| Color | color picker | RGB | The color of the emitted light |
| Intensity | float | 0-10 | The brightness multiplier. Values above 1.0 may cause overexposure in baked lightmaps |
| Shadows | boolean | On/Off | Whether this light casts shadows. Increases bake time significantly |
Step 3: Set the Range. For a standard room (8x8x3 meters), a range of 8-12 units is sufficient. For large halls or outdoor areas, use 15-25 units.
Step 4: Set the Color. Warm colors (orange, yellow) for firelight and incandescent bulbs. Cool colors (white, light blue) for fluorescent and LED lighting.
Step 5: Set the Intensity. The cohort starting point for interior lights is 0.8-1.2. For exterior accent lights, use 1.5-2.0.
Step 6: Enable Shadows only for lights that must cast shadows. Each shadow-casting light multiplies the bake time and increases the baked lightmap size.
Light placement guidelines for interior spaces
| Room size | Light count | Typical range | Typical intensity | Shadows |
|---|---|---|---|---|
| Small room (4x4 m) | 1 | 6-8 | 0.8-1.0 | Yes |
| Medium room (8x8 m) | 1-2 | 8-12 | 0.8-1.2 | Yes |
| Large hall (16x16 m) | 2-4 | 12-18 | 1.0-1.5 | Yes |
| Corridor (2x20 m) | 2-3 | 6-10 | 0.8-1.0 | Yes |
| Underground bunker | 3-6 | 8-15 | 1.0-1.5 | Yes (key lights only) |
The minimum number of shadow-casting lights per interior space should be used. One shadow-casting light per medium room is sufficient for realistic depth. Additional non-shadow lights can fill illumination gaps without adding bake time.
Area lights
Area lights illuminate a rectangular region from one side. They simulate windows, skylights, and rectangular light fixtures.
Placing an area light
Step 1: In the Lighting panel, click Add Area Light. A new area light appears in the viewport. The light is represented as a rectangle with a direction arrow showing the emission side.
Step 2: Position the area light using the move tool. The light emits from the rectangle in the direction of its forward axis (the arrow direction).
Step 3: Rotate the area light using the rotate tool (E key) to aim the emission direction at the surfaces to illuminate.
Step 4: Configure the area light properties in the inspector:
| Property | Type | Description |
|---|---|---|
| Range | float | The distance the light travels from the rectangle |
| Color | color picker | The color of the emitted light |
| Intensity | float | The brightness multiplier |
| Width | float | The width of the emission rectangle |
| Height | float | The height of the emission rectangle |
| Shadows | boolean | Whether the area light casts shadows |
Area light placement guidelines
| Light source | Width | Height | Range | Intensity | Color |
|---|---|---|---|---|---|
| Window (standard) | 1.0-1.5 | 1.0-1.5 | 5-10 | 0.5-0.8 | Sky blue (matched to exterior) |
| Window (large) | 2.0-3.0 | 1.5-2.5 | 8-15 | 0.5-0.8 | Sky blue |
| Skylight | 1.0-2.0 | 1.0-2.0 | 5-10 | 0.6-1.0 | Sky blue |
| Fluorescent fixture | 1.0-1.5 | 0.2-0.5 | 4-8 | 0.8-1.2 | Cool white |
| Neon sign | 0.5-2.0 | 0.5-2.0 | 3-6 | 1.5-3.0 | Sign color |
Area lights should be placed just inside the window or fixture opening, with the emission direction pointing into the room. The area light's rectangle should match the size of the window or fixture it simulates.
The lightmap baking process
Lightmap baking pre-computes the lighting contribution from all static lights onto all static geometry. The result is a set of PNG texture files stored in the map's Level/Lightmaps/ directory.
Before starting the bake
Step 1: Confirm all static geometry is finalized. Adding, moving, or removing objects after the bake invalidates the lightmap data for those objects.
Step 2: Confirm all point lights and area lights are positioned and configured correctly. Changing light properties after the bake requires a re-bake.
Step 3: Save the map. The editor saves the current state before entering the bake process.
Starting the bake
Step 1: Open the Lighting panel.
Step 2: Locate the Bake Lightmaps button at the bottom of the panel.
Step 3: Click Bake Lightmaps. The editor enters the baking phase.
Step 4: A progress dialog appears, showing the bake progress as a percentage. The bake may take from a few minutes to over an hour depending on the map size and quality settings.
On-screen appearance: During the bake, the editor viewport displays a series of progressively updated lighting previews. The terrain and objects gradually become illuminated as the bake computes each section. The progress dialog shows the percentage complete and an estimated time remaining.
After the bake completes
Step 1: The progress dialog closes. The viewport now displays the fully baked lighting.
Step 2: Inspect the scene for lightmap artifacts: seams, black areas, banding, or shadow quality issues.
Step 3: If artifacts are visible and need correction, adjust the bake quality settings or the light placement and re-bake.
Step 4: Save the map. The lightmap textures are stored in the Level/Lightmaps/ directory.
Bake quality settings
The bake quality settings control the resolution of the lightmap textures and the accuracy of the light transport computation.
Configuring quality settings
Step 1: In the Lighting panel, locate the Bake Quality dropdown.
Step 2: Select one of the three quality levels:
| Quality setting | Lightmap resolution | Typical bake time (Medium map) | Lightmap file size | Visual quality |
|---|---|---|---|---|
| Low | 10 texels per unit | 5-15 minutes | 2-5 MB | Visible banding on gradients; blocky shadow edges |
| Medium | 20 texels per unit | 20-40 minutes | 8-20 MB | Smooth gradients; slight blur at shadow edges |
| High | 40 texels per unit | 45-90 minutes | 30-60 MB | Sharp gradients; detailed shadow transitions |
Choosing the right quality setting
The cohort recommendation is:
- Low quality for the first bake pass to verify light placement and coverage. The fast bake time allows rapid iteration on light positions before committing to a longer bake.
- Medium quality for the standard bake pass after light placement is finalized. This is the recommended quality for most maps.
- High quality only for maps where visual quality is the highest priority (showcase maps, cinematic maps) and the target hardware can sustain the larger lightmap file size.
Bake time estimates by map size
| Map size | Low quality | Medium quality | High quality |
|---|---|---|---|
| Small (1024x1024) | 3-8 minutes | 10-20 minutes | 25-45 minutes |
| Medium (2048x2048) | 5-15 minutes | 20-40 minutes | 45-90 minutes |
| Large (4096x4096) | 15-30 minutes | 40-80 minutes | 90-180 minutes |
| Insane (8192x8192) | 30-60 minutes | 80-160 minutes | 180-360 minutes |
Bake times increase with the number of shadow-casting lights. Each shadow-casting point light adds approximately 5-15 minutes to the bake time at Medium quality. The cohort recommendation is to minimize the number of shadow-casting lights, keeping the count under 10 for Medium maps.
Failure mode: lightmap seams between terrain sections
Lightmap seams are visible color or brightness mismatches at the boundaries between adjacent terrain tiles.
What it looks like: At the edge where two terrain tiles meet, the lighting is noticeably different on each side. One tile appears brighter or has a different color cast than its neighbor. The seam is visible as a straight line running across the terrain.
Root cause: The lightmapper computes lighting for each terrain tile independently. At the tile boundary, the lightmap resolution may produce slightly different results on each side. The padding between lightmap texels at the boundary is insufficient to blend the two sides together.
Resolution steps:
Step 1: Increase the lightmap padding setting. Padding allocates more texel space at each tile boundary for the lightmapper to blend. The default padding is 2 texels. Increase to 4 texels.
Step 2: If increasing padding does not resolve the seam, verify that all adjacent terrain tiles use the same lightmap resolution. If one tile has a different resolution (because it was baked separately or uses different quality settings), the seam will persist.
Step 3: If the seam is visible on a specific material color rather than a brightness difference, verify that the terrain material's albedo texture does not have visible seams in its tiling pattern. A texture with a visible join at the tile boundary amplifies the lightmap seam.
Step 4: As a final resolution, use Unity's lightmap stitching feature on the terrain component. The stitching feature forces adjacent tiles to share the same lightmap texels at the boundary, eliminating the seam.
Failure mode: shadows not updating after bake
After a re-bake, some shadows appear unchanged from the previous bake, or new objects cast no shadows.
What it looks like: After moving a light and re-baking, the shadows from the previous light position remain visible. Or, after adding a new object and re-baking, the object has no shadow.
Root cause: The lightmap cache is serving stale data. The engine caches lightmap data from previous bakes and reuses it when the lightmap signature (determined by the scene geometry and light configuration) has not changed. In some cases, the cache does not detect the change and serves old data.
Resolution steps:
Step 1: Clear the lightmap cache. Navigate to the map's Level/Lightmaps/ directory and delete all PNG files.
Step 2: Delete the lightmap data files in the scene. Look for files with the .lightmap extension or similar cache files in the map's directory.
Step 3: Re-load the map in the editor.
Step 4: Re-bake the lightmaps. The cleared cache forces the lightmapper to compute all lighting from scratch.
Step 5: Save the map after the new bake completes.
Failure mode: black areas on lightmap
Sections of the terrain or objects that render as completely black after baking have no lightmap data for those areas.
What it looks like: A building wall, terrain slope, or object surface appears as a solid black patch in the baked scene. The black area has no texture or color information.
Root cause: The lightmapper could not find a valid light path to those texels. This occurs when:
- The geometry does not have lightmap UVs generated.
- The
Contribute GIflag is not enabled on the mesh renderer. - The geometry is double-sided and the lightmapper is sampling the back face.
Resolution steps:
Step 1: Open the object or terrain in the Unity project.
Step 2: Verify the mesh renderer has Contribute GI enabled. This flag is found on the Mesh Renderer component in the Inspector.
Step 3: Verify the mesh has lightmap UVs. Lightmap UVs are a second UV channel (UV2) generated during mesh import or asset authoring. If the UV2 channel is missing, enable Generate Lightmap UVs in the model's import settings.
Step 4: After fixing the asset, rebuild the master bundle and re-bake the lightmaps.
Failure mode: banding on gradient surfaces
Visible color bands on smooth surfaces such as terrain slopes and interior walls after baking.
What it looks like: A surface with a gradual lighting gradient (such as a wall illuminated from one side) displays visible horizontal or vertical color bands instead of a smooth gradient. The bands are evenly spaced and follow the lightmap texel grid.
Root cause: The lightmap resolution is too low to represent the smooth gradient. At low resolution, each texel covers a larger surface area, producing visible steps in the gradient as the lighting changes from one texel to the next.
Resolution:
Step 1: Increase the lightmap resolution by selecting a higher quality setting (from Low to Medium, or Medium to High).
Step 2: If increasing the global resolution is not feasible (bake time too long), use a higher resolution only for the affected geometry. In Unity, individual meshes can have their lightmap resolution overridden through the Mesh Renderer's Lightmap Scale property.
Step 3: Enable the ambient occlusion post-process on the lightmapper if available. Ambient occlusion can mask banding by adding contact shadows at geometry intersections.
Failure mode: white blown-out area on lightmap
Overly bright areas on the lightmap that appear as pure white patches with no detail.
What it looks like: A section of the terrain or a wall surface is pure white in the baked scene. The surface detail and texture are lost in the bright patch.
Root cause: The light intensity of a nearby light is too high, resulting in lightmap texels that exceed the maximum representable value. The lightmap clamps to white at the maximum.
Resolution:
Step 1: Select the light closest to the blown-out area.
Step 2: Reduce the light's Intensity value. Values above 1.5 are the most common cause of overexposure. Reduce to 1.0-1.2 and re-bake.
Step 3: If reducing intensity still produces blown-out areas, reduce the light's Range. A shorter range with the same intensity produces a sharper fall-off that may prevent overexposure at surface contact points.
Failure mode: lightmap bake takes too long
A bake that exceeds 90 minutes for a Medium map at Medium quality has too many shadow-casting lights or unnecessary geometry complexity.
What it looks like: The bake progress bar progresses slowly, with the estimated time remaining showing 60+ minutes for a Medium map.
Root cause: Each shadow-casting point light adds significant computation to the bake. The most common cause is placing 15+ shadow-casting point lights on the map when 5-8 would suffice.
Resolution steps:
Step 1: Count the number of shadow-casting lights on the map. Open the Lighting panel and inspect each point light's Shadows setting.
Step 2: Disable shadows on every light that does not absolutely require shadow casting. Accent lights, ambient fill lights, and decorative lights can have shadows disabled without noticeable visual degradation.
Step 3: Reduce the lightmap resolution from High to Medium. The bake time reduction from High to Medium is typically 50-60%.
Step 4: If the bake time is still excessive, reduce the global lightmap resolution further by adjusting the texels-per-unit value in the bake settings.
Failure mode: dynamic objects look wrong in baked lighting
Player-held items, vehicles, and other dynamic (non-static) objects appear to have incorrect lighting in areas that are illuminated by baked lights.
What it looks like: A player holding a weapon inside a room with baked lighting looks disconnected from the scene. The weapon appears too bright or too dark compared to the room's baked illumination.
Root cause: Dynamic objects cannot use baked lightmaps because they move through the scene. They rely on light probes for indirect lighting information. If no light probes are placed in the area, dynamic objects receive only the ambient color, which may not match the baked lighting.
Resolution: Place light probes throughout the map, particularly in areas where players spend time: interior rooms, underground areas, and any space lit primarily by baked lights. Light probes record the lighting at their position and interpolate between probes for dynamic objects moving through the scene.
FAQs
How many point lights can I place on a map?
There is no hard limit enforced by the engine. The practical limit is determined by the lightmap bake time and the lightmap file size. The cohort recommendation is to stay under 30 point lights and under 10 area lights on a Medium map. Exceeding these counts increases bake time significantly and may produce lightmap file sizes that affect download speed.
Do I need to bake lightmaps after every light placement change?
Yes. The bake is a snapshot of the lighting configuration at the time the Bake button was clicked. Any change to a light's position, range, color, intensity, or shadow setting requires a re-bake to update the lightmap. The cohort workflow is to place all lights first, adjust them at Low quality for fast iteration, then perform the final bake at Medium or High quality.
Can I bake only a section of the map?
No. The lightmap bake is a map-wide operation. Every bake generates lightmaps for the entire terrain and all static objects. Partial bakes are not supported. The entire map must be re-baked after any lighting change.
Why does my terrain have no baked lighting after the bake completes?
The terrain may not have lightmap UVs generated. In Unity, the terrain component must have lightmap UVs enabled. Verify that the terrain is included in the lightmap bake by checking the terrain's Contribute GI flag and Generate Lightmap UVs setting in the Unity project.
How do I speed up the bake time for a large map?
Reduce the number of shadow-casting lights to 5 or fewer. Reduce the lightmap quality from High to Medium. If the map is Insane size, consider splitting it into smaller sections that are authored separately and combined at export time.
Can I use real-time lighting instead of baked lightmaps?
The Level Editor uses baked lightmaps as the primary lighting method for static geometry. Real-time lighting is not supported for static objects in the standard editor workflow. Dynamic objects (players, items, vehicles) use light probes and the ambient color.
My lightmap bake produces different results each time. Why?
The lightmapper may use non-deterministic sampling for certain lighting calculations. Minor differences between bakes are normal and are not visible in gameplay. If the differences are major (completely different lighting patterns), the scene geometry may have unapplied changes or the lightmap cache may be corrupted.
How do I configure light probes for dynamic objects?
Light probes are placed in the Unity project, not in the Level Editor. Open the Unity map project, navigate to the Light Probe Group component, and place probe positions throughout the map. After placing probes, bake them in Unity. The baked probe data is included in the map export.
What is the difference between lightmap resolution and texture resolution?
Lightmap resolution (measured in texels per world unit) controls how many lightmap texels cover a given surface area. Higher values produce more detailed baked lighting but larger lightmap files. Texture resolution (measured in pixels per texture) controls the detail of the surface material texture. Both affect the final visual quality but are independent settings.
Why are my lightmaps blurry on distant geometry?
The lightmap resolution is uniform across the map. Distant geometry does not receive a lower-resolution lightmap. The blurriness is caused by the texel density: each lightmap texel covers more world space at distance, making the lighting appear lower-resolution. This is normal behavior for baked lightmaps.
Light color temperature guide
The color of a light source affects the atmosphere and perceived temperature of a scene. The table below provides cohort-recommended color values for common light source types:
| Light source | Color R | Color G | Color B | Color appearance |
|---|---|---|---|---|
| Incandescent bulb | 1.0 | 0.85 | 0.6 | Warm yellow-white |
| Fluorescent tube | 0.8 | 0.9 | 1.0 | Cool blue-white |
| LED warm white | 1.0 | 0.9 | 0.7 | Warm white |
| LED cool white | 0.85 | 0.9 | 1.0 | Cool white |
| Candle / fire | 1.0 | 0.6 | 0.3 | Warm orange |
| Emergency exit sign | 0.2 | 1.0 | 0.2 | Bright green |
| Red alert light | 1.0 | 0.1 | 0.1 | Bright red |
| Moonlight (exterior) | 0.5 | 0.6 | 0.8 | Cool blue |
| Industrial sodium lamp | 1.0 | 0.7 | 0.2 | Yellow-orange |
The color values above are relative intensities. Adjust the overall Intensity field to control the brightness while keeping the color ratios consistent with the source type.
Best practices
- Use Low quality for the first bake pass to verify light placement and coverage. Iterate on light positions quickly, then perform the final bake at Medium or High quality.
- Minimize shadow-casting lights. Each shadow-casting light multiplies bake time. Accent and fill lights should have shadows disabled.
- Place lights before performing the final bake. Moving lights after the final bake requires a re-bake.
- Use light probes for areas where dynamic objects need matching illumination. Light probes are essential for interior spaces.
- Test the map in single-player after the final bake to confirm the baked lighting matches the intended atmosphere.
- Save the map before starting the bake. Long bakes occasionally fail; saving beforehand prevents losing unsaved work.
- Keep the lightmap file size reasonable for the map size. Large lightmaps increase download time for clients joining a server.
- Document the light placement in the map project so that other mappers can understand the lighting layout.
Advanced considerations
Lightmap UV layout for custom assets
Custom static objects must have lightmap UVs (UV2 channel) generated during the asset authoring process. In Blender, add a second UV map to the mesh and unwrap it with the same seams as the primary UV. The lightmap UVs should be non-overlapping and packed within the 0-1 UV space. Overlapping lightmap UVs cause light leaks at runtime, where light from one surface bleeds onto another surface that shares the same UV space.
Light probe placement strategy
Light probes are placed as a grid or set of individual positions throughout the map. The cohort recommendation for probe placement is:
- Interior spaces: Place one probe at the center of each room at player eye height (approximately 1.8 units above the floor). If the room has multiple lighting zones (near a window vs. in a corner), place additional probes to capture the lighting variation.
- Corridors and hallways: Place probes every 5-10 meters along the corridor length. The probe spacing should be close enough that the lighting interpolation between probes is not noticeable to the player.
- Underground areas: Place probes at every significant change in lighting (tunnel entrance, cavern center, alcove). Underground areas with no real-time light source rely entirely on light probes for dynamic object illumination.
- Outdoor areas: Place probes sparingly. The sun and ambient color provide sufficient illumination for outdoor dynamic objects. Probe placement in outdoor areas is only necessary near structures that cast large shadows.
For the complete light probe configuration workflow, see the Unity documentation on Light Probe Groups.
Combining baked and real-time lighting
While static objects use baked lightmaps, certain gameplay elements benefit from real-time lighting. Muzzle flashes, explosions, flashlight beams, and vehicle headlights use real-time lights that are added by the game script at runtime. These real-time lights overlay on top of the baked lightmaps and do not require a re-bake when their position or state changes.
Light bake workflow for multi-floor buildings
Multi-floor buildings require careful light placement to avoid light bleeding between floors. Light from a point light on the first floor can leak through the floor geometry into the basement if the floor mesh is thin or if the lightmap UVs overlap.
The cohort workflow for multi-floor buildings is:
- Place lights on one floor at a time. Complete the first floor's lighting before moving to the second floor.
- Use the minimum light range necessary to illuminate each floor. Lights with a range greater than the floor-to-ceiling height will bleed into adjacent floors.
- For standard 3-meter floor-to-ceiling heights, limit point light range to 6-8 units per floor.
- After placing all floor lights, perform a Low-quality bake and inspect the cross-floor lighting. If light from the second floor is visible on the first floor's ceiling, reduce the range of the second-floor lights or add a light-blocking geometry layer between the floors.
Lightmap size optimization for published maps
The lightmap files in Level/Lightmaps/ are PNG textures. For published maps, the cohort recommendation is to monitor the total lightmap file size. A Medium map with 8-10 shadow-casting lights at Medium quality produces approximately 15-25 MB of lightmap data. If the total exceeds 50 MB, reduce the quality setting or the number of shadow-casting lights to keep the download size manageable.
Appendix A: Point light property reference
| Property | Type | Default | Description |
|---|---|---|---|
| Range | float | 10.0 | The radius of illumination in world units |
| Color R | float | 1.0 | Red channel of the light color (0-1) |
| Color G | float | 1.0 | Green channel of the light color (0-1) |
| Color B | float | 1.0 | Blue channel of the light color (0-1) |
| Intensity | float | 1.0 | Brightness multiplier |
| Shadows | boolean | false | Enable shadow casting from this light |
Appendix B: Area light property reference
| Property | Type | Default | Description |
|---|---|---|---|
| Width | float | 2.0 | Width of the emission rectangle |
| Height | float | 1.0 | Height of the emission rectangle |
| Range | float | 10.0 | Distance the light travels from the rectangle |
| Color R | float | 1.0 | Red channel of the light color (0-1) |
| Color G | float | 1.0 | Green channel of the light color (0-1) |
| Color B | float | 1.0 | Blue channel of the light color (0-1) |
| Intensity | float | 0.8 | Brightness multiplier |
| Shadows | boolean | false | Enable shadow casting |
Appendix C: Lightmap baking failure mode diagnostic table
| Symptom | Most likely cause | Resolution |
|---|---|---|
| Lightmap seams between terrain tiles | Lightmap padding too low | Increase padding from 2 to 4 or 8 |
| Shadows not updating after re-bake | Lightmap cache serving stale data | Clear Lightmaps/ directory and re-bake |
| Black areas on lightmap | Geometry missing lightmap UVs or Contribute GI flag | Generate UV2 channel; enable Contribute GI |
| Banding on gradient surfaces | Lightmap resolution too low | Increase resolution to Medium or High |
| White blown-out areas | Light intensity too high | Reduce Intensity to 1.0 or below |
| Bake takes too long | Too many shadow-casting lights | Disable shadows on secondary lights |
| Dynamic objects look wrong in baked area | Light probes not placed | Place light probe grid and bake probes |
| Lightmap blurry at distance | Resolution uniform across all distances | This is normal; accept or increase global resolution |
| Light leaks between adjacent surfaces | Overlapping lightmap UVs on custom asset | Fix UV2 layout to be non-overlapping |
| Bake fails with error | Scene geometry has unapplied changes | Save the scene and all prefabs before baking |
Authoring checklist
Before publishing a map with baked lighting, confirm the following:
- [ ] All point and area lights placed and positioned correctly
- [ ] Shadow-casting lights minimized to essential count
- [ ] Light range and intensity prevent overexposure
- [ ] Lightmap bake performed at appropriate quality for target hardware
- [ ] No lightmap seams visible at terrain tile boundaries
- [ ] All shadows update correctly after the final bake
- [ ] No black or blown-out areas on static geometry
- [ ] Gradient surfaces show smooth transitions (no banding)
- [ ] Light probes placed in interior and underground areas
- [ ] Lightmap file size is within download budget
- [ ] Map saved after bake with lightmap data included
Cross-references
- Object Culling and Static Batching -- the previous article; covers performance optimization that precedes lighting.
- Navmesh Generation and Editing -- the next article; covers navmesh baking that follows lighting.
- Environmental Lighting and Weather -- the sun angle and ambient color configuration that complements placed lights.
- Level Config Reference -- Config.json fields including lighting and lightmap parameters.
- Manual Object Culling Reference -- culling volumes that interact with baked lightmap visibility.
- Smartly Dressed Games modding documentation -- official field reference.
- Unturned on Steam -- game page and community.
Document history
| Version | Date | Author | Notes |
|---|---|---|---|
| 1.0 | 2026-07-26 | 57 Studios | Initial publication. Point light and area light placement, lightmap baking process, quality settings, bake time estimates, light map seam resolution, failure mode documentation. |
