Phase 5 updates

Phase 5 · Slice 21 ·

LODGroups and culling masks

  • Draw items carry a view mask: the renderer shares one set of opaque runs for items every view draws and gives the others runs per view; shadows come from items any view draws.
  • Cameras' culling masks now hide layers (GameObject layers reach the renderer).
  • LODGroup (UnityEngine): levels with screen heights and renderers, ForceLOD, enabled, size and reference point, RecalculateBounds, Unity's default three levels; QualitySettings.lodBias and maximumLODLevel. Per camera, the extraction picks each group's level by Unity's screen-relative height rule; views that replace the scene's cameras (framing, fixed) draw level 0. Unity scenes' and prefabs' LODGroups import (m_LODs).
  • The lod_groups scenario (API, defaults, bounds) matches Unity; 45 scenarios pass. An MCP e2e test renders a group switching level 0, 1, 2 and culled as the camera backs off, and a culling mask hiding a layer. A lod_demo sample (rows of trees tinted by level).
  • Not yet: cross-fading, Unity 6's mesh LODs (Mesh.lodCount), LOD in reflection probe captures.
  • Next: GPU culling (frustum and Hi-Z occlusion) and indirect draws.