Why Mobile glTF Uses Baked AO Over Dynamic Shadows

Mobile-first 3D pipelines utilizing glTF typically prioritize performance, power efficiency, and universal hardware compatibility over complex real-time lighting calculations. While dynamic shadow maps offer interactive realism, their computational overhead makes them problematic for resource-constrained mobile chipsets. By using baked ambient occlusion (AO) maps—natively supported within the standard glTF PBR material model—developers achieve soft, grounding visual depth while eliminating the massive performance bottlenecks associated with real-time shadow generation.

Draw Call and Render Pass Reductions

Dynamic shadow mapping requires the rendering engine to draw the scene's geometry multiple times per frame. At minimum, the scene must be rendered once from the perspective of each shadow-casting light to generate a depth buffer, and then rendered again from the camera's perspective.

For mobile devices, this process rapidly exhausts limited CPU and GPU resources:

  • Doubled Draw Calls: Generating shadow passes often doubles or triples the total draw calls per frame, placing intense pressure on mobile CPU drivers.
  • glTF Native Efficiency: Baking AO into the glTF model stores occlusion data directly inside the texture channels (typically the red channel of the standard occlusionRoughnessMetallic texture). The engine evaluates lighting in a single render pass without rendering additional geometry to off-screen buffers.

Memory Bandwidth and TBDR Architectures

Most mobile GPUs utilize Tile-Based Deferred Rendering (TBDR) architectures. TBDR relies on high-speed on-chip memory to shade small screen tiles before writing final pixels back to system RAM.

Dynamic shadow maps disrupt this architecture:

  • Context Switching: Generating dynamic depth maps forces the GPU to write large textures out to slow, battery-draining system memory and read them back during the main forward or deferred pass.
  • Texture Bandwidth: Filtering shadow maps (such as Percentage-Closer Filtering) requires multiple texture samples per fragment to reduce jagged edges, saturating limited mobile memory bandwidth.
  • Baked AO textures are sampled alongside the base color and material properties in the same shading pass, fitting neatly into the GPU's texture cache.

Thermal Throttling and Battery Life

Mobile devices operate without active cooling fans. Continuous, high-intensity GPU workloads induce thermal throttling, where the device forcibly lowers its clock speed to prevent overheating.

Dynamic shadow mapping consumes significant continuous power, often causing an application that runs smoothly for thirty seconds to drop frames drastically after two minutes. Baked AO provides static rendering costs: a scene with baked AO consumes virtually the same amount of power whether the camera is stationary or moving, ensuring stable frame rates over extended sessions.

Visual Quality on Low-Tier Hardware

Dynamic shadows on mobile platforms often require extreme compromises to run acceptably:

  • Artifacts: Developers must reduce shadow map resolutions (e.g., to 512x512 or 1024x1024), resulting in pixelation, shadow acne, and shimmering artifacts along edges.
  • Lack of Contact Shadows: Low-resolution dynamic shadows frequently fail to resolve fine contact details where objects touch the ground, leading to a floating visual effect.

Baked ambient occlusion provides high-resolution, smooth, and physically plausible contact shadows without run-time degradation. Because the calculation is performed offline in 3D modeling suites or baking software, artists can use ray-traced accuracy that no mobile GPU could compute in real time.