> For the complete documentation index, see [llms.txt](https://tools.continis.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://tools.continis.io/black-box/changelog.md).

# Changelog

### 2.0.2

(26/07/26)

**Changed**

* Changes in behaviour when Locking is disabled on the global level (Preferences > BlackBox > Unlock All Prefabs):
  * Revealed properties are now visible (they were not displayed before).
  * It now makes Overrides dropdown available even if Disable Apply is on. This is meant to facilitate override removal when the feature is used as a global debug toggle.

**Fixed**

* Better handling of selection in case Inspector is locked.
* Toggling global Disable Locking preferences now refreshes the Blackbox Inspector of the selected object.
* Fixed issue with BlackBox header not clickable that was affecting Unity 6.0 when gizmo visibility is disconnected from component header clicking (by setting Preferences > Scene View > Auto-hide Gizmos to false). Now clicking the header will correctly expand/contract the BlackBox Inspector in Unity 6.0.

## 2.0.0 - BlackBox 2.0

(02/07/26)

**Added**

* Child GameObjects [can now be revealed](/black-box/main-features/reveal/child-gameobjects.md) in the Hierarchy. When revealed, they appear in the Hierarchy exactly as they normally would. Their parent and ancestor objects are also shown (disabled), unless they are explicitly revealed as well.
* BlackBoxed Prefabs now can act as if unlocked while in PlayMode, meaning that all children and all components become visible. This can be useful when using the search feature of the hierarchy, as invisible objects wouldn't show up otherwise. This behaviour can be configured in [Project Settings](/black-box/other/project-settings.md).
* It is now possible to override both the properties of the BlackBox component and the lists revealed. This means that if you have a Prefab with a BlackBox and is configured in a certain way (say, it's unlocked, and has Disable Apply on); you can then use that Prefab as the base for a Variant, and override those settings only for the Variant. You can also add/remove elements to reveal lists in the variant or on nested instances. This allows to reveal properties or components on the Variant that were not present in the base Prefab.
* UX improvements:
  * Revealed elements of a list are now visualised as part of a reorderable list. This means they can be reordered easily, and you can multi-select more than one to remove them in bulk.
  * The last selected Reveal list is now remembered after recompilation, or if jumping between Prefabs that have the same source asset.
* New reveal types to annotate/decorate the BlackBox Inspector:
  * Header: adds a bold header, very much like the `[Header]` attribute on properties.
  * Comment: allows to add a comment, which appears as a HelpBox. Supports rich text and hyperlinks.
  * Separator: displays a thin line.
* Working with multiple selection: if all selected Prefabs are instances of the same asset, then Revealed items are visible and modifiable. The user can also Revert or Apply any override to them.
* New defaults in [Project Settings](/black-box/other/project-settings.md):
  * Whether newly added BlackBox components are locked by default.
  * Which [selection type](/black-box/other/selection-type.md) they use by default.

**Changed**

* The visibility of Reveal Lists has been reworked: while before each list was just either visible or not, now they can be configured to show or hide depending on where the list is being visualised. You have full power to choose where each lists is shown: scene instances of the Prefab, when the Prefab is used as a Variant root, when the Prefab is nested, or any combination of these contexts. This allows to fine-tune the workflows around lists.
* The UI for a Revealed method now says "Method" at the beginning in the internal Inspector – for consistency with other Reveal types.
* When [revealing methods](/black-box/main-features/reveal/methods.md), public methods from parent classes are displayed and can now be revealed as a button.
* BlackBox now has a presence in both Project Settings and Preferences. Settings are split between the two as it makes sense.
* Revealed localRotation fields now show the custom name chosen by the user.

**Fixed / Performance improvements**

* Checks on selection change have been optimised, now they only run when needed.
* Fixed revealing GO references showing up as broken.
* Much better handling of Undo, Redo, Apply and Revert. Now using these actions correctly updates the selected BlackBox's Inspector.
* Duplicating a Prefab that has no BlackBox no longer adds the component (even if Project Setting says to add it to new Prefabs).
* Plenty of bug fixes here and there.

### 1.9.1

(24/05/26)

* Fixed Method button randomly becoming very tiny on hover.
* Hide the Hats teams field if Teams are disabled in Hats 2.0.0.

## 1.9.0 - 2D Update

(11/11/25)

* It is now possible to set the [Selection Type](/black-box/other/selection-type.md) property to Use Sprite Renderers, to ensure that BlackBoxed Prefabs that contain SpriteRenderers select correctly in the Scene View.
* When [revealed](/black-box/main-features/reveal.md), properties of type SortingLayer now display with the correct dropdown field, which will allow the user to select the SortingLayer to use.
* Improved the reaction to changes to "Unlock All Prefabs" Project Setting. Even when switching the setting using the shortcut (Ctrl+Shift+U by default), BlackBoxed Prefabs in the scene or in Prefab Mode now react and update accordingly.
* Improved tooltip to Selection Type property, to make it clear that gizmos need to be on.

### 1.8.3

(17/04/25)

* Renamed setting "Disable Locking globally" to "Unlock all Prefabs"
* Menu item and shortcut to toggle Unlock All Prefabs.
* Better handling of Unlock All Prefabs value in the lock icon shown in the BlackBox Inspector.
* (Unity 2021) Removed click-catcher functionality to prevent 2021 users from ending up with a collapsed Inspector that they can't expand.

### 1.8.2

(30/12/24)

* Fixed a bug that prevented from orbiting the scene view camera or panning, on BlackBox instances where HideTransform was active.
* Now when Temp Unlocking the object is automatically expanded in the hierarchy.

### 1.8.1

(28/12/24)

* Fixed a bug with some components becoming invisible when Temp Unlocking a Prefab with a MeshRenderer on its root.
* Fixed an issue that made it possible to Temp Unlock Prefab assets.
* Improved how Material inspectors are hidden/shown for locked Prefabs.

## 1.8.0 - Temp Unlock & Hats integration

(17/12/24)

* Added Temp Unlock! Now, each BlackBox in the scene has a button that you can click to temporarily unlock it. Upon clicking away or changing scene, the Prefab is locked back automatically. This can be a huge timesaver if you frequently make overrides to specific Blackboxed Prefab instances.
* Added Hide Transform. You now have the ability to have BlackBox hide the Transform component too. This can be used to create unmovable Prefabs whose position can't be overridden.
* Initial integration with [Hats: Workspaces and Teams](https://tools.continis.io/hats) (Note: Hats is available as a [separate package](https://assetstore.unity.com/packages/slug/hats-workspaces-and-teams-283644) so this functionality is only visible if you also have Hats installed). Upon configuring a Prefab, you can now choose which Teams are allowed to edit it.
* When Disable Apply is on and the overrides dropdown is greyed out, now there is a tooltip that explains why.
* The component header for BlackBox now can be clicked, and it expands/collapses the component as expected. The Documentation button also works as expected.
* Reorganised all BlackBox secondary properties (that is: Hide Transform, Unlock If, Selection Type...) into one foldout, instead of two like before.
* Many more options in Project Settings to customise defaults.
* The BlackBox component icon is now more visible in the Inspector.

### 1.7.1

(24/11/24)

* BlackBox is now compatible with Unity 2021.3 (with [some caveats](https://tools.continis.io/black-box/pages/PzR6ZARYWl6g8X9VLvva#is-blackbox-compatible-with-unity-2021.3)).

## 1.7.0 - Object References

(19/08/24)

* Added Object References! Now in addition to properties, methods and entire component Inspectors, you can reveal a reference to a Component or a GameObject. This allows to assign that object as a reference by copy/pasting it in other locations, even if the object itself isn't visible.
* Behaviour of BlackBox can now be customised so it stays unlocked when nested in another Prefab.
* It can also be customised so it stays unlocked when used as the root of a Prefab Variant.
* You can now multi-select Prefab assets that have BlackBox, and mass-edit their base properties (Locked, Disable Apply, Hide Transform, etc.)
* Clicking on a GameObject header now pings the object in the hierarchy (if visible).
* Better handling of unlocked child BlackBoxes of unlocked BlackBoxes.
* Better handling of hiding components when selecting a Prefab asset that has BlackBox.
* Temporarily hiding the HideTransform property due to an Inspector issue. This will be re-enabled in the future. You can still modify the property by going into the Debug Inspector.

### 1.6.2

(09/08/24)

* Added the HideTransform property, to allow the user to choose to hide the BlackBox's own Transform or RectTransform alongside the other components (so that only the BlackBox component is visible).
* Inactive locked Prefabs are now correctly locked not only on scene load, but also when Unity is launched.
* Fixed a buggy behaviour that made RectTransforms disappear. They now stay visible.
* Fixed a bug with components added as an override just disappearing. They now stay visible also on locked BlackBox Prefabs.
* Improved handling of when BlackBox is added to a GameObject, which also solves the case of a Prefab using BlackBox that is unpacked in the scene.
* Fixed an error stating "SerializedObject of SerializedProperty has been Disposed" related to the BlackBox Inspector being destroyed.

### 1.6.1

(01/08/24)

* Added the ability to reveal all of the properties of a particular component, one by one, with one click. The user can then proceed to remove the ones they don't need. This helps with components that have tons of properties.
* Reveal all properties can also be invoked with a right-click on a component's header.
* More concise wording in contextual menus (i.e. "BlackBox > Reveal in...").
* Totally reworked look of GameObject headers.
* Revealed entire components now display as a foldout that can be collapsed. The foldout will remember its state, so the same component on the same Prefab will stay collapsed/expanded on all instances of that Prefab.
* Locked BlackBox Prefabs that have a MeshRenderer on the root now don't display empty Material editor blocks at the end of the Inspector.

## 1.6.0 - Reveal lists

(29/07/24)

* Each BlackBox component can now expose one or more lists of revealed items (up to 10), instead of only one list as before. Lists can be used to create different sets of revealed properties for different personas, like for instance, one for each sub-team in the company (designers, programmers, etc) or for each person on the team.
* Each list can have a name, which will be displayed on buttons that allow to switch between lists while working.
* A new button has been added to the component in Prefab Mode, to enter list editing mode. This mode allows to rename revealed lists and change their properties.
* Lists can be made invisible, so the button representing it won't show.
* For each list, you can specify whether or not to group the revealed items by the GameObject they belong to. Lists that don't group by GameObject won't show the GameObject headers, so all revealed items will be shown one after the other with no space in between.
* While editing lists, the revealed items of each list can now be easily reordered, just by using drag and drop.
* Right-clicking on the property of a child object now allows to choose which list to reveal the property in.
* Right-clicking on a component now allows to reveal that component on the first list.
* Improved creation of selection mesh for Prefabs that contain meshes with sub-meshes.

### 1.5.3

(18/07/24)

* Fixed an annoying bug with GUID clashes, happening when using BlackBox together with other assets.

### 1.5.2

(25/06/24)

* Added icon to the BlackBox component, but it's hidden by default in the scene (can be enabled in the Gizmos panel).
* New welcome screen, with useful links to documentation, email support, and more.

### 1.5.1

(18/06/24)

* Fixed external component breaking due to a UI rename.
* Removed custom indent for all properties. Now all Revealed properties use their original indentation.

## 1.5.0 - Reveal methods and components

(15/06/24)

* Added the ability to reveal public methods from components as buttons, alongside Revealed properties.
* Added the ability to reveal entire components on the BlackBox, using the original component's Inspector.
* A new mini-label in the Prefab Mode inspector makes it easy to identify what is the component that a certain property or method comes from, just by hovering over it.
* Added the ability to reveal UnityEvents as buttons, by decorating them with the attribute \[RevealEventAsButton].
* MUCH better error handling. Now the BlackBox will keep working even in case of missing properties and methods. In addition it will display their name before you remove them, so you can reconnect them again.
* Fixed a ton of inconsistencies in spacing.

## 1.4.0 - Odin Inspector support

(28/05/24)

* Added support for Odin Inspector! If a revealed property has an Odin Inspector attribute, you can ensure it draws correctly inside BlackBox by simply adding a \[RevealWithOdin] attribute to it.
* Better spacing for properties while being revealed (only in Prefab Mode).

### 1.3.2

(08/05/24)

* The header of the BlackBox component now appears as disabled in the scene, to discourage users from disabling or removing the component.
* Improved handling of Revealed properties that have been renamed or removed on the original component.

### 1.3.1

(25/04/24)

* Fixed selection mesh Gizmo not being drawn after a Prefab is selected for the first time.
* Added new selection type "Use SkinnedMeshRenderers". Useful for Prefabs representing characters.

## 1.3.0 - Disable Apply

(24/04/24)

* Added the ability to disable Applying overrides! It's a per-Prefab setting, that prevents the user from Applying overrides back to the source asset.
* Added a Project Setting to control whether newly-created BlackBox Prefabs have Apply disabled by default (this can be changed later, on each individual Prefab).
* Now it's possible to reveal the Active flag property for child GameObjects.
* Better styling, better tooltips, improved stability.

### 1.2.1

(06/04/24)

* Fixed BlackBox not hiding upon drag and drop directly into the scene.
* The component is now stripped from the build even for unlocked BlackBoxes.
* Fixed issue with Prefab being quickly dragged in and out of the Scene view.
* Fixed issue with selection mesh, when MeshFilter has null mesh.

## 1.2.0 - GameObject properties

(03/04/24)

* Added support for revealing GameObjects's basic properties (layers, GI flags, name, tag).
* Added support for revealing properties from child Transform components.

## 1.1.0 - Original release

(18/03/24)

<br>
