Version: 2022.1
Set up multiple scenes
Use scripts to edit multiple scenes

Bake data in multiple scenes

You can reduce the time taken to bake data and the size of the generated data if you bake your data into multiple scenesA Scene contains the environments and menus of your game. Think of each unique Scene file as a unique level. In each Scene, you place your environments, obstacles, and decorations, essentially designing and building your game in pieces. More info
See in Glossary
.

Bake lightmaps with multiple scenes

To predetermine the brightness of surfaces in your scenes, you can bake lightmapsA pre-rendered texture that contains the effects of light sources on static objects in the scene. Lightmaps are overlaid on top of scene geometry to create the effect of lighting. More info
See in Glossary
. There are two ways to bake lightmaps for multiple scenes at once:

  • To automate your lightmap builds, use the Lightmapping.BakeMultipleScenes function.
  • To manually bake the lightmaps in multiple scenes, use the Unity Editor and perform the following steps:
    1. Open the scenes that you want to bake.
    2. Open the Lighting window and disable the Auto Generate option.
    3. Select Generate Lighting.

Shadows and GI light bounces work across all scenes, but the lightmaps and Realtime GI data loads and unloads separately for each scene. This means scenes don’t share and you can unload scenes with lightmaps safely. Scenes do share Light ProbeLight probes store information about how light passes through space in your scene. A collection of light probes arranged within a given space can improve lighting on moving objects and static LOD scenery within that space. More info
See in Glossary
data so all Light Probes for scenes baked together load at the same time.

Bake NavMesh data with multiple scenes

There are two ways to bake your NavMeshA mesh that Unity generates to approximate the walkable areas and obstacles in your environment for path finding and AI-controlled navigation. More info
See in Glossary
data for multiple scenes at once, which shows an approximation of the walkable surface on your scenes:

  • Use the NavMeshBuilder.BuildNavMeshForMultipleScenes function to automate your NavMesh data builds.
  • Use the Unity Editor to bake the NavMesh data manually for multiple scenes.
    1. Open the scenes that you want to bake.
    2. Go to the Navigation window and select the Bake button.
    3. Save the scenes with the NavMesh to make the scene-to-NavMesh reference persistent.

This bakes the NavMesh data into a single asset that’s shared by your loaded scenes. The data saves in the folder that matches the name of the current active scene.

Bake occlusion culling data with multiple scenes

You can bake occlusion cullingA that disables rendering of objects when they are not currently seen by the camera because they are obscured (occluded) by other objects. More info
See in Glossary
data for multiple scenes at once to determine which GameObjectsThe fundamental object in Unity scenes, which can represent characters, props, scenery, cameras, waypoints, and more. A GameObject’s functionality is defined by the Components attached to it. More info
See in Glossary
render: 1. Open the scenes that you want to bake. 2. Go to the Occlusion Culling window (Window > Rendering > Occlusion Culling). 3. Select the Bake button. 4. Save the baked scenes to make the scene-to-occlusion-data reference persistent.

This saves the occlusion culling data into a single asset called OcclusionCullingData.asset in a folder matching the name of the current active scene.

If you load a scene additively and it has the same occlusion data reference as the active scene, then the static renderers and portals that cull information for that scene initialize from the occlusion data. This means the occlusion system performs as if static renderers and portals are baked into a single scene.

Additional resources

Set up multiple scenes
Use scripts to edit multiple scenes