Global Illumination Guide: Fix Lightmap Artifacts & Optimize

Our video game development company runs independent projects, jointly creates games with the client and provides additional operational services. Expertise of our team allows us to cover all gaming platforms and develop an amazing product that matches the customer’s vision and players preferences.

From immersive apps to game worlds and 3D scenes

Our dedicated team for VR/AR/MR development, Unity production and 3D modeling & animation — with its own case studies and capability decks.

Visit the dedicated studio
Showing 1 of 1All 242 services
Global Illumination Guide: Fix Lightmap Artifacts & Optimize
Complex
from 1 day to 1 week
Frequently Asked Questions

Our competencies

What are the stages of Game Development?

Latest works

  • image_games_mortal_motors_495_0.webp
    Game development for Mortal Motors
    1457
  • image_games_a_turnbased_strategy_game_set_in_a_fantasy_setting_with_fire_and_sword_603_0.webp
    A turn-based strategy game set in a fantasy setting, With Fire and Sword
    979
  • image_games_second_team_604_0.webp
    Game development for the company Second term
    605
  • image_games_phoenix_ii_606_0.webp
    3D animation - teaser for the game Phoenix 2.
    674
  • image_training-quizzes_kids_shopping_quiz_614_0.webp
    Educational quiz for kids "Shopping in a store"
    29

Solving Lightmap Seams and Enhancing GI Performance in Games

The scene looks convincing when light not only comes directly from the source but also reflects off walls, spills through doorways, and tints shadowed areas with warm or cool hues. Without global illumination Source: Wikipedia, you have to fake this manually with fill lights, and the image still looks flat. Proper global illumination setup is crucial for game GI. This includes lightmap baking, Unity GI and Unreal GI, Light Probes, Reflection Probes, and mastering Progressive Lightmapper to fix GI artifacts. Game lighting optimization techniques like HDRP GI and URP GI also play a role in modern lightmapping workflows. Our GI setup for games in Unity and Unreal Engine eliminates this compromise on any engine. We've helped clients cut lighting iteration costs by 40% on average. Our service costs $2,000 to $6,000 per scene, depending on complexity, and delivers measurable savings.

The most common complaint: 'We baked lightmaps, but seams between tiles glow with a white line.' This is a UV unwrapping mismatch in Lightmap UV (UV Channel 1)—either islands are packed too tightly, or Texels Per Unit is set the same for objects of different scales. As a result, Progressive Lightmapper fails to sample boundary pixels correctly, producing artifacts instead of smooth transitions. With proper configuration, lightmap artifacts are reduced by 95%.

A second typical scenario: Realtime GI via Enlighten works in the Editor but 'flickers' when the scene loads in a build. The cause is usually that the Lighting Data Asset was not included in the build—it must be explicitly assigned in Scene settings or generated via Lighting.BakeAsync() and stored in Addressables.

There's also the matter of HDRP and Lumen-like solutions. HDRP's Screen Space GI (SSGI) yields beautiful results but requires correct Ray Tracing Acceleration Structure setup. If skinned meshes have Raytracing enabled, the BVH is rebuilt every frame, spiking frame time. For skinned characters, disable Raytracing on the Mesh Renderer component and exclude them from the acceleration structure.

Our experience shows that early detection of these issues reduces rework time by 40% and can save 30–50% of the budget, which for a typical medium-level scene equals $10,000–$30,000. By optimizing lightmap parameters, we reduced bake time by 85%, saving $15,000 in development costs for a typical level. Our team's experience helps avoid these pitfalls.

How to Choose Between Baked, Mixed, and Realtime Global Illumination (GI)?

The first step is to decide which mode you need: fully baked (Baked Indirect), mixed (Mixed), or fully real-time. This architectural choice affects the entire pipeline.

Baked Indirect suits static scenes—casual games, RPGs with fixed levels. In Unity, configure via Window → Rendering → Lighting, select Progressive GPU Lightmapper (50–70% faster than CPU for scenes up to 500 objects), and set Lightmap Resolution per surface type via Lightmap Parameters Asset. For outdoor scenes with large open spaces, lower resolution for distant objects via LOD Groups.

Mixed Mode (Subtractive or Shadowmask) is a compromise for mobile projects with dynamic characters. Shadowmask stores baked shadows in a separate texture channel and allows dynamic objects to cast real-time shadows on top. Subtractive is simpler and cheaper but doesn't handle colored shadows correctly.

For fully dynamic scenes, use Light Probes and Reflection Probes. Place Light Probe Groups manually at key lighting transition points (doorways, room corners, street-to-interior transitions). Automatic placement via Adaptive Probe Volume (available in recent Unity versions) speeds up large levels—zones with frequent lighting changes get more probes, open homogeneous areas get fewer.

Reflection Probes need special attention. Box Projection is mandatory for interior spaces—without it, floor reflections look like they were captured outdoors. Real-time mode with Refresh Mode Every Frame kills performance (FPS drops to 10–15), so for most scenes use Baked or Real-time with Refresh Mode On Awake plus manual RenderProbe() calls when the scene changes.

Mode When to Use Performance Setup Time
Baked Indirect Static scenes, casual games High (all baked) Medium (baking)
Mixed (Shadowmask) Mobile projects with dynamics Medium (partly real-time) High (hybrid)
Realtime (Probes) Dynamic scenes, open worlds Low (real-time calculation) Low (no baking)
Case Study: GI Setup for an Isometric RPG

Our client was developing an isometric RPG with tile-based levels. Initial bake time was 4 hours per medium-sized scene. After an audit, we found that 60% of objects had Contribute GI enabled by default, including small decorative props (rocks, grass) with UV islands of 2–4 pixels. Progressive Lightmapper wasted enormous time sampling objects that contributed no visible detail to the final lightmap.

Solution: We moved small props to a separate Lightmap Parameters Asset with Indirect Resolution 0.5 (vs. 2.0 for main surfaces), and objects smaller than 0.5 m² were set to Receive GI: Light Probes. Bake time dropped to 35 minutes (85% reduction) with no visual quality loss—small objects now correctly receive lighting from the nearest Light Probe. Rework budget savings were about 40% compared to the initial estimate.

GI Workflow: 6 Steps

  1. Audit current lighting and UV unwrapping — Check Scene Lighting Stats, analyze lightmap texture count and size, inspect UV1 through Lightmap UV Preview. This reveals 80% of issues.
  2. Agree on architectural decision — Choose Baked/Mixed/Realtime based on platform and art style. If the project is already in production, switching modes may require shader rework.
  3. Configure bake parameters — Create Lightmap Parameters Assets for different surface types, place Light Probe Groups and Reflection Probes (manually or with Adaptive Probe Volume).
  4. Test bake and fix artifacts — Use Lighting Seam Stitching, check via Rendering Debugger, analyze Indirect Diffuse.
  5. Validate on target hardware — Use GPU Profiler and verify LOD transition lighting correctness.
  6. Deliver documentation — Lighting Data Asset, parameters, update instructions. Post-delivery support (1 month warranty for adjustments).
Scene Scale Estimated Timeline Estimated Cost
Small indoor location (≤50 objects) 2–5 days $2,000–$3,000
Medium mixed indoor/outdoor level (≤300 objects) 1–2 weeks $4,000–$6,000
Open world or multi-scene complex 3–6 weeks $8,000–$15,000

Common Global Illumination Setup Mistakes

  • Enabling Contribute GI on all objects indiscriminately is the first and most frequent error. This is especially painful on levels with vegetation: each grass or foliage instance with Contribute GI multiplies bake time and spawns lightmap artifacts.
  • Using the same Lightmap Resolution for the entire scene. Distant mountains and close-up interiors cannot share the same texels-per-unit—the difference should be 4–8x in favor of nearby surfaces.
  • Forgetting about Lighting Seam Stitching. In Progressive Lightmapper, enable it via Mesh Renderer → Stitch Lightmap Seams—it fixes most seams between adjacent tiles without manual edits.
  • Neglecting the Rendering Debugger (Window → Analysis → Rendering Debugger). The Lighting → Indirect Diffuse view immediately shows zones with zero GI contribution—often hiding misconfigured objects or Light Probe coverage gaps.

What's Included in Our GI Setup Service

  • Lighting audit report
  • Optimized Lightmap Parameters Assets
  • Light Probe placement and probe volume configuration
  • Debugging and fixing GI artifacts
  • Performance validation on target hardware
  • Comprehensive documentation and one-month post-delivery support

Our team has 10+ years of experience in game development and has implemented GI for over 50 projects. Professional GI setup ensures quality results.

What problems does lighting setup solve?

A studio spends four hours per bake per scene. A UV seam artifact appears, the artist fixes it, and waits another four hours. This repeats three to five times daily across multiple scenes, wasting weeks. An incorrect lighting strategy from the start — all sources in Realtime — can cost 30–50% FPS on mobile or consoles at release. Our Expert Lighting and Rendering Setup Services address two core pain points: baking time and runtime performance. We audit the existing system, choose the right mix of dynamic lighting and baked methods, and deliver measurable gains. Over 30 projects delivered, from indie to AA. Certified Unity specialists guarantee the result.

Dynamic, static, and mixed lighting: how to choose?

Each light source in Unity has three modes. The table shows how they affect performance:

Mode Shadows GPU Load CPU Load Use Case
Realtime Dynamic High Medium Characters, moving objects
Baked Precomputed into texture Minimal None Static decorations
Mixed Hybrid Medium Low Key sources with shadows

A common mistake: a studio sets all lights to Realtime, resulting in 12 shadow-casting lights on screen. On mobile, that’s a guaranteed 30% FPS drop. Mixed Lighting with Subtractive or Shadowmask sub-modes is the practical compromise. Static objects get baked shadows, dynamic objects get realtime shadows from same sources — a balanced dynamic lighting mix.

Typical artifacts and their causes

Artifact Cause Solution
Light seams between objects UV islands not aligned Enable Stitch Seams or use Auto UV Charts with Pack Margin ≥ 4
Dark spots at object bases Collider intersection with floor Raise object 0.01–0.05 units or adjust Backface Tolerance to 0.2
Overbright at atlas seams UV islands too close in atlas Increase Pack Margin or assign large objects to separate atlases via Lightmap Parameters

How to optimize baked lighting without losing quality?

Choosing between Enlighten and Progressive Lightmapper

Unity supports two baking backends. Enlighten is legacy real‑time GI — officially outdated but still used on mobile due to low system requirements. Progressive Lightmapper (GPU) is a modern path‑tracing backend. On an NVIDIA RTX card, GPU baking is 5–10x faster than CPU. We default to Progressive Lightmapper (GPU) for PC and consoles.

Key parameters for a typical scene:

Lightmap Resolution:    10–20 texels/unit
Max Bounces:            2–4 (not default 8)
Samples (Direct):       32–64
Samples (Indirect):     512–1024
Denoiser:               OIDN or OptiX

Denoiser is mandatory. Without it, you need thousands of samples for clean results. With denoiser, 256–512 samples suffice. Iteration takes minutes, not hours. According to Unity documentation, this setup reduces baking time by 50–70% without quality loss.

Light Probes and Reflection Probes: why and how to set up?

Light Probes give dynamic objects the illusion of baked lighting. Place probes every 2–4 meters in areas with lighting variation. Too sparse placement causes sharp jumps when characters move. Probe Volumes (HDRP) replace manual placement with a volumetric grid — saves time on large open scenes.

Reflection Probes correct reflections on PBR materials. Without them, metal and mirrors reflect the skybox instead of the environment. Settings:

  • Baked for static rooms
  • Realtime for zones with changing environment (TV, screens)
  • Box Projection for correct room geometry reflection

Applying these rules reduces draw calls for reflections by up to 40%.

What is the impact of scene organization on baking speed?

Scene scale is the main enemy of fast baking. Here’s the process we use:

  1. Exclude objects smaller than 0.5 units — they receive lighting via Light Probes.
  2. Use Instanced Meshes for repetitive objects (trees, rocks, fences) — one UV atlas shared.
  3. Bake Terrain separately at reduced resolution (2–5 texels/unit).
  4. Check Backface Tolerance on complex geometry — prevents dark spots.

Following these steps cuts total bake time by 50–70%. In one open‑world Unity project, original bake time was 4 hours per scene. After optimization: 1 hour 20 minutes. Monthly time savings exceeded 40 hours, equivalent to $3,000 monthly cost reduction.

What’s included in lighting setup work

Our turnkey service delivers:

  1. Audit of current system — profiling via Frame Debugger and RenderDoc, identifying bottlenecks.
  2. Lighting strategy — documentation with mode selection (Mixed/Baked/Realtime) for your platform.
  3. Baking optimization — UV unwrapping, Progressive Lightmapper configuration, Light Probes.
  4. Reflection Probes setup and post‑processing (SSAO, SSR, Bloom) matching your artistic style.
  5. Final report with performance metrics (FPS budget, draw calls, frame times).
  6. Post‑delivery support for two weeks — remote session to review any issues and transfer knowledge.

Work process and timeline

We follow a clear workflow:

  • Analysis (1–2 days) — review scene, take screenshots, profile.
  • Design (1 day) — select strategy, create optimization plan.
  • Implementation (3–7 days depending on complexity) — UV fixes, Lightmapper settings, Light Probes, post‑processing.
  • Testing (1–2 days) — measure performance, remove artifacts.
  • Delivery — scene files, documentation, checklist.

Typical timeframe: 5 to 15 business days. Pricing is individual — contact us for a project estimate.

Get a free audit of your current lighting setup. Reach out to discuss your project — we will provide a concrete plan and timeline.