Prefab Tool brings nested prefab support to Unreal Engine.

Prefab Tool Youtube Playlist



Discord

It allows you to convert preconfigured actors in the level to prefab asset in the content browser, and then add the prefab to the same or other levels as many time as you like.

Prefab can be edited in the level editor directly, all changes to the prefab can then be propagated to all existing prefab instances.



You can disconnect a prefab instance to prevent it being automatically updated by prefab changes. Or you can choose to revert any changes to the prefab instance.

Prefab can be nested to support complex scene hierarchy. Changes to nested prefab can be reverted or propagated like normal prefabs.

Prefab is an editor tool to help level building, it can't be spawned in runtime. Once prefab instances been placed in the level, you can choose to convert them back to normal actors.





List of Features:

Create Prefab from collection of actors in the level

Nested Prefab to support complex scene hierarchy

Preview Prefab Thumbnail in Content Browser and Detail View

Drag and drop Prefab into the level to instantiate actors collection

Edit Prefab directly inside level editor

Apply changes of Prefab to all Prefab instances

Revert changes of Prefab instances

Convert Prefab instances to normal actors

Destroy Prefab Actor with option to destroy whole hierarchy

Swap Prefab Asset anytime





Technical Details:

Full c++ source code included, works with both Launcher and Github builds

Works with both c++ and blueprint only projects

Prefab Edtior Module is precompiled for Win64; Prefab Runtime Module is precompiled for Win32/Win64/Android





Known Limitation and Issues:

Prefab is base on actor hierarchy, actor types which can't be attached to other actor are not supported. (BSP Brush/Group Actor/Landscape)





Licensing

DRM-Free,

Full source code included

Requires one license per seat (You can choose Indie Team or Studio License if needed)

Indie Team License allows maximum 10 developers providing the Licensee with annual gross revenues (based on fiscal year) below US$100,000.

Studio License allows any number of developers employed by the Licensee to use the software.

Change Log:

1.2.3.4

Add Use Actor Name as Variable Name option

Replace DefautlSceneRoot in generated blueprint with child actor's root component if possible

Fix documentation not been packaged in marketplace release

Fix RuleType not been initialized warning

1.2.3.3

Now can add hotkey for Collapse This/All command

Add option to ignore layers in preab assets and spawn/revert prefab actor

Add Match Layers to Parent Prefab Actors in World

Fix Apply to Nested Prefab option not working

Add experimental option to hide prefab actors in PIE if already hidden in editor

Add experimental option to enable toggle prefab actor visibility in PIE with the visibility widget in detail panel or prefab tool window

Update copyright date

1.2.3.2

Fix Ambiguous search warning

Fix include issues with IWYU

1.2.3.1

Fix unnecessary reverting child prefabs inside nested prefabs

1.2.3

Add Variant Actor support

Add Variant Rule to Prefab Component

Add Dark UI Theme

Group Prefab Tool buttons under expandable headers

Add option to enable apply to nested prefab recursively

Fix Duplicate No Revert not working properly for nested prefab

Duplicate No Revert with offset nown

1.2.2.2

Add Duplicate No Revert to duplicate prefab actor as is without revert to original state

Now can toggle prefab thumbnail display in Prefab Tool window throguh context menu

Add debug option to display prefab instance tag

Ensure prefab asset has instance tags saved when spawning in world

Now new prefab asset from selection always havs instance tags saved right away

Add new option cateory Apply and Revert

1.2.2.1

Now apply/revert with Prefab Tool Window will keep original instance actors selection

Add Select Same Prefab and Select all to Prefab Tool Window

Add Select All Unlocked/Select All Disconnected Prefab Actors

Add context menu to toggle tab visibility of Prefab Tool Window

Add 4.23 support

1.2.2

Add experimental runtime Prefab spawn with blueprint support

Add option to set new prefab naming pattern

Add option to draw Prefab View Visualizer shaded

Prefab Content data type changed from FText to FString

Prefab actors' collapse status in outliner are remembered after PIE session

Duplicated prefab actor collapsed in outliner by default

Prefab actors collapsed by default after map opened

Now new prefab will be saved in current content browser path if content browser opened (4.21+)

Now can auto include attached child actors when creating new prefab

Now set prefab pivot will try preserve actors' position by default

Now can change Prefab Tool setting quickly via new added Setting Tab in Prefab Tool Window

Now can view change log in new About tab in Prefab Tool Window

Move prefab property out of advanced display in prefab actor detail view

Fix bug when save map with non-applyed prefab might leave orphan instances in level

1.2.1.2

Fix bug create new prefab from actors in hierarchy be offseted

Fix bug prefab instances been duplicated more than once when saving map

1.2.1.1

Fix bug nested prefab actor potentially get detached when there's Marked Target Prefab Actor

Fix bug sequencer spawned actor been added to Marked Target Prefab Actor

Add proper circular nested prefab check when duplicating prefab actor

1.2.1

Add Launch Prefab Tool Window button to prefab component detail panel

Now can attach selected actors to last selected prefab actor with Attach in Prefab Tool Window

Now always draw component visualizer for target actor even it's not selected

Now can toggle Prefab View Visualizer in Prefab Tool Window

Color column of world outliner and prefab component visualizer now shows prefab actor with prefab un-assigned in yellow color

The Color of world outliner prefab color column and prefab component visualizer is customizable now

Mark Target now implicit make prefab's level current (and restore after UnMark)

Destroy in Component Detail now is Destroy Keep Children and working; Remove Destroy Hierarchy since it's default behavior now

Add hotkey Ctrl+Shift+End for snap selected prefab actor to floor

Disable most operation in Prefab Tool Window when Prefab is disconnected

UnMark and Lock prefab actor in Prefab Tool Window now will select prefab actor afterward

Fix bug that prefab actor instance's layer visibility been set to visible after spawn

Fix bug that changes of instance actors' attachment not been properly reflected after apply/revert

Fix Prefab View Visualizer flickering issue in some cases

Fix Toggle Isolate only works properly while initial isolated prefab actor is selected

1.2.0

Add Prefab View Visualizer to visualize prefab usage in level editor viewport

Add a sortable color column in World Outliner to indicate Prefab Actor Status (Lock/UnLock/Connected/Disconnected)

Add Prefab Tool Window

Add Mark Prefab Actor as Target Prefab Actor option, new actors will be added to a Target Prefab Actor

Add Toggle Isolate option to isolate current editing prefab actor in level editor viewport

Add New Empty Prefab option and mark it as Target

Add Set Prefab Pivot option to change prefab pivot base on current widget location or it's bounding box

Add option to move actors to compensate pivot changes after Set Prefab Pivot

Add proper Snap to Floor option to snap prefab actor to floor base on bounding box or pivot

Add ability to Lock and Collapse all Prefab Actor in World Outliner

Add Save/Save As in Prefab Tool Window to quickly save or duplicate current Prefab Asset

Add Attach/Detach in Prefab Tool Window to quickly add/remove actors to current Prefab Actor

Add an option in Prefab Editor Setting to always display Prefab Component Visualizer even it's not selected

Delete a prefab actor now also delete all it's children actors by default! (Old behavior will leave it's children intact)

Now lock a prefab actor (by clicking on lock widget) or click a locked prefab actor in level editor will also make it collapsed in World Outliner

Move prefab actor to another level now works properly (without leaving it's children behind)

Focus on prefab actor with F key works better since since prefab component calc bounds dynamically base on children now

Now try to rebuild render data of ISM/HISM actors inside Prefab when it's spawned

Add PrefabVersion field to PrefabAsset for future prefab format change

Thanks Nathan Cheever and Mateusz Piaskiewicz for feature suggestions and feedback during 1.2.0 development!

1.1.3

Fix bug that editor crash if prefab contains objects of obsolete or non-exist class

Fix bug that merge child instances for nested prefab might cause editor crash

1.1.2

[Performance] Now resolving Archetype from cache first (Thanks Dan Brakeley for code contribution)

[Performance] Delay spawned Prefab actor instances' references replacement

[Performance] Disable warning if destination level is hidden when spawning prefab instances

Apply Prefab changes on large map should expect ~10x speed improvement

Fix bug Prefab actorss not been refreshed when level is added to the world via UWorld::AddToWorld (Thanks Dan Brakeley for code contribution)

Fix bug duplicating Prefab asset not generating new prefab id

Refator PrefabGEditorAdapter out of PrefabToolHelpers

1.1.1

Fix a bug that "Change Prefab to" and "Replace Selected Actors with Prefab" options not checking whether parent actors have same prefab asset assigned ( Thanks code contribution from James Dzierwa @ Certain Affinity )

) Fix a bug that prefab's pivot property should not be used when attaching spawned prefab instances

Add 4.20 support

1.1.0



Add Set Prefab Pivot to Current Widget Location

Add option to always set Components of Generated Blueprint to Movable

Fix bug when Replace Actors With Created Prefab option is on and the last selected actor is not on the topmost hierarchy will cause created prefab attach to deleted actor

1.0.9

Add option to enable apply changes from disconnected Prefab Actor

Add option to harvest components first instead of always create child actor when generating blueprint ( Thanks code contribution from Elliot Yun @ RyseUp Studios )

) Generated blueprint reference is now saved with Prefab Asset

Generate blueprint can now ignore actors of specific class or has specific actor tags

Now Support Generate Blueprint option default is on

Now Replace Actors with Created Prefab option default is on

Cleanup all LogTemp output

1.0.8

Fix Prefab's asset references not properly parsed in 4.18

Fix Migrate prefab to other project not working in 4.18

Now call PostEditMove on all children actors after parent Prefab Actor moved

1.0.7

Add Lock Selection feature, now spawned prefab actor will be locked/grouped by default

Add context menu and hotkey to toggle lock selection

Enable Prefab Component Visualizer by default; Now draw darker wireframe box to indicated lock status

Add Select children actors to context menu

Stamp prefab will now disconnecting all chidren prefab actor

Add Undo support for hide/lock prefab actor through context menu

Add 4.18 support; Drop 4.15 support

1.0.6

Add Stamp Prefab option to level editor context menu to spawn disconnected prefab actor

Add Replace Selected Actors with Prefab to context menu as a replacement of built-in "Replace Selected Actors with" function

Add Change Prefab option to context menu

Add "Replace Actors With Created Prefab" option in Prefab editor setting

Add Prefab Component Visualizer

Now generated blueprint will inherit mobility setting from prefab

Add workaround to persist painted vertex color of blueprint instances inside prefab

Fix ensure issue in generated blueprint

Fix bug when creating a new prefab out of a prefab and immediately placing it will cause the contents of the original prefab in the scene to disappear

Fix bug circular nested prefab might be created when applying prefab change

Fix bug attempting to create nested prefab when nested prefab support is off

Change Prefab editor module's LoadingPhase to PostEngineInit

Minor code refactoring

1.0.5

Add option to check if prefab content changed before updating all preab actors when opening map

1.0.4

Add experimental Blueprint generation support

Support non-unity build

1.0.3.1



Fix potential editor crash due to name clash when reverting prefab Actor in multi-levels map (thanks ColdIronPoz for the report and fix)

Fix apply prefab actor only works if world's current level is the same as prefab actor in multi-levels map

Drop 4.14 support

1.0.3

Add Visibility Widget to show/hide Prefab Actor with it's children actors in one click

Add Select Parent Prefab Actor context menu

Add Collapse and Select Parent Prefab Actor context menu

Add default hotkey binding for Select/Collapse/Show/Hide Prefab Actor

Fix Weak Object Reference in Prefab wrongly pointing to original source actor

Select Prefab Actors from Prefab Asset context menu now select actors even it's hidden

1.0.2

Add Prefab in Create Basic Asset category

Fixed bug blueprint archetype stored in prefab asset references table, preventing redirectors been fixup

Fixed bug prefab thumbnail preview scene holding up preview actor references unnecessary

1.0.1

Fixed bug that thumbnail origin offseted

Improved prefab asset references parsing

Added log output of un-supported actors

1.0



Initial Release