Version: 2019.1 (switch to 2018.3 or 2017.4)
Instance overrides
Nested Prefabs
Other Versions

Editing a Prefab via its instances

The InspectorA Unity window that displays information about the currently selected GameObject, Asset or Project Settings, alowing you to inspect and edit the values. More info
See in Glossary
for the root of a PrefabAn asset type that allows you to store a GameObject complete with components and properties. The prefab acts as a template from which you can create new object instances in the scene. More info
See in Glossary
instance has three more controls than a normal GameObjectThe 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
: Open, Select and Overrides.

The three Prefab controls in the Inspector window for a Prefab instance
The three Prefab controls in the Inspector window for a Prefab instance

The Open button opens the Prefab AssetAny media or data that can be used in your game or Project. An asset may come from a file created outside of Unity, such as a 3D model, an audio file or an image. You can also create some asset types in Unity, such as an Animator Controller, an Audio Mixer or a Render Texture. More info
See in Glossary
that the instance is from in Prefab Mode, allowing you to edit the Prefab Asset and thereby change all of its instances. The Select button selects the Prefab Asset that this instance is from in the Project window. The Overrides button opens the overrides drop-down window.

Overrides dropdown

The Overrides drop-down window shows all the overrides on the Prefab instance. It also lets you apply overrides from the instance to the Prefab Asset, or revert overrides on the instance back to the values on the Prefab Asset. The Overrides drop-down button only appears for the root Prefab instance, not for Prefabs that are inside other Prefabs.

The Overrides drop-down window allows you to apply or revert individual prefab overrides, or apply or revert all the prefab overrides in one go.

  • Applying an override modifies the Prefab Asset. This puts the override (which is currently only on your Prefab instance) onto the Asset. This means the Prefab Asset now has that modification, and the Prefab instance no longer has that modification as an override.

  • Reverting an override modifies the Prefab instance. This essentially discards your override and reverts it back to the state of the Prefab Asset.

The drop-down window shows a list of changes on the instance in the form of modified, added and removed components, and added GameObjects (including other Prefabs).

The Overrides dropdown in the Inspector window when viewing a Prefab instance
The Overrides dropdown in the Inspector window when viewing a Prefab instance

To inspect an entry, click it. This displays a floating view that shows the change and allows you to revert or apply that change.

The overrides dropdown window with an added component override selected
The overrides dropdown window with an added component override selected

For components with modified values, the view displays a side-by-side comparison of the component’s values on the Prefab Asset and the modified component on the Prefab instance. This allows you to compare the original Prefab Asset values with the current overrides, so that you can decide whether you would like to revert or apply those values.

In the example below, the “Fruit” child GameObject exists on both the Prefab Asset and the Prefab instance, however its scale has been increased on the instance. This increase in scale is an instance override, and can be seen as a side-by-side comparison in the Overrides drop-down window.

The Overrides dropdown with comparison view, showing modified values in the Transform component of a child GameObject of the prefab instance
The Overrides dropdown with comparison view, showing modified values in the Transform component of a child GameObject of the prefab instance

The Overrides drop-down window also has Revert All and Apply All_ buttons for reverting or applying all changes at once. If you have Prefabs inside other Prefabs, the Apply All button always applies to the outermost Prefab, which is the one that has the Overrides drop-down button on its root GameObject.

Context menus

You can also revert and apply individual overrides using the context menu in the Inspector, instead of using the Overrides drop-down window.

Overridden properties are shown in bold. They can be reverted or applied via a context menu:

Context menu for a single property
Context menu for a single property

Modified components can be reverted or applied via the cog drop-down button or context menu of the component header:

Context menu for modified component
Context menu for modified component

Added components have a plus badge that overlays the icon. They can be reverted or applied via the cog drop-down button or context menu of the component header:

Context menu for added component
Context menu for added component

Removed components have a minus badge that overlays the icon. The removal can be reverted or applied via the cog drop-down button or context menu of the component header. Reverting the removal puts the component back, and applying the removal deletes it from the Prefab Asset as well:

Context menu for removed component
Context menu for removed component

GameObjects (including other Prefabs) that are added as children to a Prefab instance have a plus badge that overlays the icon in the Hierarchy. They can be reverted or applied via the context menu on the object in the Hierarchy:

Context menu for added GameObject child
Context menu for added GameObject child

  • 2018–07–31 Page published with limited editorial review

  • Nested Prefabs and Prefab Variants added in 2018.3

Did you find this page useful? Please give it a rating:

Instance overrides
Nested Prefabs