Workflow

Fit Scene Fusion Into
Your Team's
Real Workflow.

Scene Fusion works alongside your existing version control, not instead of it. This page covers how to structure sessions, handle source control, and what to expect when the editor does something unexpected mid-session.

Sync Files First,
Then Start Collaborating.

Everyone on the team should be on the same project state before starting a session. Scene Fusion syncs in-scene changes in real time, but it does not distribute project files to team members who are behind.

Pull from source control

Before joining a session, every team member should pull the latest commit from your version control system. Session participants who are on different project states may see errors or conflicts.

Designate a host

One team member acts as the session host. The host opens the scene, starts the session, and is responsible for saving and committing scene files when the session ends. The host should remain in the session until it closes.

Exclude the KinematicSoup folder

Add the KinematicSoup/ folder to your .gitignore or version control ignore file. It contains local logs and configuration that should not be shared or committed.

How to Start
Your Session.

Sessions are structured around a single host. Other team members join after the host has the scene open and synced.

1

Host opens the scene and starts a session

The host opens the scene file in their Unity Editor and starts a session from the Scene Fusion panel (Window → Scene Fusion). Scene Fusion uploads the current scene state to the session server. This may take a moment on large scenes.

2

Team members join

Other team members open the same scene file locally, then join the session from the Scene Fusion panel. Scene Fusion syncs the host's current scene state to each joining editor. Participants do not need to have the correct scene state before joining, but they should be on the same project state.

3

Work simultaneously

Every in-scene change is replicated to all participants in real time. Selecting a GameObject locks it to you until you deselect it or disconnect. Other participants see locked objects highlighted and cannot modify them. Deselecting immediately releases the lock.

4

Host saves and commits

When the session ends, the host saves the scene and commits to source control. Non-host participants should discard any local scene file changes rather than committing, as the host's version is canonical. New assets created during the session require special handling (see the source control section below).

Using Scene Fusion
With Source Control.

Scene Fusion syncs in-editor changes in real time, but new asset files created during a session (new prefabs, terrain modifications) are written to each participant's local disk separately. Local file IDs and GUIDs will differ, which can cause conflicts if multiple participants commit. Use one of these two patterns to avoid them.

Pattern A

Single committer

Designate one person (usually the host) to commit all new assets created during the session. All other participants discard their local copies of those files after the session ends. This is the simpler approach and works well for smaller teams.

  1. Host commits scene file and all new assets
  2. All other participants pull and discard local changes
  3. Non-host participants never commit scene files or new prefabs
Pattern B

Per-person branches

Each team member works on their own branch derived from the master branch. After the session, each person commits their changes to their own branch. Branches are then merged, designating one as the canonical source, rather than having multiple participants commit to the same branch.

  1. Each participant creates a branch from master before the session
  2. Each participant commits their local changes to their own branch
  3. Branches are merged, keeping one as the source of truth

What Happens When
the Editor Interrupts.

Two common Unity editor events temporarily disconnect a participant from the session. Both reconnect automatically.

Play mode

Entering Play mode disconnects the participant from the session. Changes made by other participants while you are in Play mode are buffered. When you exit Play mode, Scene Fusion reconnects and applies any missed changes automatically. You do not need to rejoin manually.

Script recompile

Saving a script or triggering a recompile disconnects the participant while Unity reloads the domain. Scene Fusion reconnects automatically once the recompile completes and the editor returns to Edit mode. No manual action is needed.

Also from KinematicSoup

Reactor: real-time multiplayer for Unity

The same real-time sync that powers Scene Fusion, in a server-authoritative multiplayer engine. Free to develop locally.

Learn more →

Ready to Start
Collaborating?

Free for teams of two. Install via Unity Package Manager and have your first session running in minutes.