Changelog
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)
Last updated