Skip to content

Editor Windows

Mika Notarnicola edited this page Jul 20, 2026 · 5 revisions

Bootstrap adds a few pieces of editor UI: a one-time setup wizard, a settings page, a toolbar dropdown, and a read-only status window.

Bootstrap Wizard

Edit > Bootstrap Wizard, modify the settings to your liking, and click Run Setup.

image

Each checkbox controls one part of the scaffolding, all enabled by default:

  • Create Bootstrap Scene: creates a bootstrap scene at Assets/Bootstrap/Bootstrap.unity.
  • Modify Scenes List: adds that scene to the build settings scene list, at index 0.
  • Create Default Environment: creates a default Environment asset, sets it as both the project's Default Play Mode Environment and Default Build Environment (see Bootstrap Settings), and maps it to the new bootstrap scene.
  • Create Edit Mode Service List Asset: creates a Service List asset and assigns it as the project's Edit Mode Services list.

The default environment the wizard creates doesn't come with a Service List assigned yet. See Quick Start for adding one and your first service.

Bootstrap Settings Window

Editor > Project Settings > Bootstrap

This is the window for editing the settings described in Bootstrap Settings. It has two tabs:

Project

image

and User.

image

Every setting on the User tab has its own checkbox next to it. Checking it lets you type in a value that overrides the Project setting, but only for that one setting, on your machine; everything else keeps using the Project value. Unchecking it greys the field back out and reverts to the Project value. On the Project tab there's no checkbox at all, since a Project value is always in effect unless a User override replaces it. Changes on either tab save immediately, there's no separate save step.

The top of the window also has an Edit Mode header with a Re-Bootstrap Edit Mode button, which tears down and reinitializes the currently running edit-mode app instance. This is useful after changing the Edit Mode Services list or any of its services, since edit mode doesn't otherwise restart on its own the way pressing Play does.

The User tab is also where the currently Selected Environment lives.

Main Toolbar Dropdown

(Unity 6000.3 and newer)

You can enable the Main Toolbar Dropdown by context-clicking on the main toolbar and enabling Bootstrap > Options.

image

The 🥾Bootstrap dropdown to the main editor toolbar will now be visible, centered next to the Play Mode Controls by default.

image

It contains three items:

  • Flow Enabled: toggles the Editor Flow Enabled setting (see Bootstrap Settings). Toggling it here sets a User-scope override, the same as checking its box on the settings window's User tab would.
  • Status Window: opens the Bootstrap Status Window.
  • Restart App: prompts for confirmation, then calls App.Reset(), discarding whatever AppInstance is currently running and re-running the bootstrap sequence from scratch.

Bootstrap Status Window

Window > General > Bootstrap Status Window

A read-only view into whatever AppInstance is currently running, in edit mode or play mode. It doesn't have any controls, it's a status window, not a control panel.

image

What It Shows

App

  • Session GUID: the current session's SessionGuid.
  • Create Timestamp: when the session's bootstrap started.
  • App Type: the concrete AppInstance type currently running (e.g. EditModeAppInstance, PlayModeAppInstance).

Services

  • Source Asset: a read-only reference to the on-disk Service List the active list was cloned from.
  • Below that, a read-only inspector of the active service list itself, so you can see which services are actually live without leaving Play mode or digging through the Project window for the cloned instance. This is the primary way to adjust serialized properties on live services.

If nothing is currently bootstrapped, all of the above is simply blank.

Refresh Behavior

The window updates when a session starts or ends (App.Initialized/App.Deinitialized), not continuously. It doesn't poll, and it isn't wired up to intermediate steps of the Bootstrap Flow, so you won't see it reflect states like PreBootstrap or AsyncTaskFlush while they're happening. Treat it as "what's live right now," not a step-by-step trace of bootstrapping in progress.

Clone this wiki locally