Turn any Prefab into a "black box": hide its components and child GameObjects, and reveal only what you want. No more unwanted overrides or Applying by mistake, saving time for the whole team.Prefab encapsulation has been one of the top feature requests from Unity users ever since nested Prefabs were introduced in 2018. BlackBox enables just that, with a single component!With all the options that Unity's Prefab system offers, even for an expert user it can be easy to make modifications by mistake on a Prefab instance and leave them as overrides in the scene, something that can become a source of bugs that are pretty hard to track down. With BlackBox it's possible to prevent overrides to any Prefab... but not just that!BlackBox offers three main features:📦 1 - Locking a Prefab📦 2 - Revealing properties, methods, references, or entire components📦 3 - Prevent ApplyAnd the beauty is that these three can be used together or individually, to create just the Prefab workflow you need! (per-Prefab)In detail:📦 1 - LOCKINGOnce you add the BlackBox component, any Prefab with a number of children GameObjects and components appears as a single object in the hierarchy in the Scene. The user can only change the Transform properties, and enable/disable it. To modify other properties, simply open it in Prefab mode and make changes as usual.📦 2 - REVEAL PROPERTIES, METHODS, OBJECT REFS, COMPONENTSIf you have an important aspects of your Prefab that still need to be visible, you can add them to a list of revealed items. These special properties are going to show up on the root even when the Prefab is locked! (see images)All property types are supported out of the box, including the ones decorated with Odin Inspector! ✨You can reveal entire component Inspectors in one click! ✨✨You can reveal methods, and they will show up as buttons, so you can invoke them directly from the BlackBox (in Play or Edit mode). ✨✨✨If you need to reference a child Component in another script (a typical Unity pattern!), you can reveal an object reference to it! ✨✨✨✨In essence, you can expose any internal aspect of your locked Prefabs, and use that to guide the team on what they can actually modify.📦 3 - PREVENT APPLYYou can take revealed properties one step further and prevent users from applying Scene overrides to them. They can still be Reverted, but with no Apply the user gets the extra safety of being unable to mess with the original Prefab asset.Auto-addYou can configure BlackBox to be auto-added to all your Prefabs on creation, to achieve the ultimate safe workflow... or just add it manually to the ones you want!No impact on the gameThe BlackBox component is an editor-only component, so it won't end up in your builds, meaning it has no impact on the game.You can easily add, remove or readd the BlackBox component, with no consequence or changes to how your Prefabs behave at runtime.Compatible with all Prefab types and workflowsThe BlackBox workflow is compatible with Prefab Variants and nesting, so you can have a locked Prefab within an unlocked Prefab, or viceversa.Compatible with Odin InspectorBy simply using an [RevealWithOdin] attribute, properties decorated with Odin attributes will show in the BlackBox component just like they do in their original components.Please note that the vast majority of Odin attributes are supported, but not all. Attributes that modify the layout (like [TabsGroup] or [FoldoutGroup]) are unlikely to work.DocumentationYou can preview the documentation and learn all about the functionality before you get the asset.Save some moneyBlackBox is part of our All Editor Tools bundle. By getting that, you effectively get this package at 25% off. If instead you already purchased this package, you will get a discount on the bundle.FeedbackIf there is a workflow BlackBox doesn't cover, I'd like to hear from you how I can make BlackBox better. You can write to buoybase@gmail.com and we can assess if it can be added to the asset. Or hop on my Discord to have a chat.Version compatibilityBlackBox is only compatible with Unity 2021 LTS and later (including Unity 6).