Instance Tool is an editor mode plugin for Unreal Engine, with it you can manipulate instances of Instanced Static Mesh Component and Hierarchical Instanced Static Mesh Component directly in editor viewport. It also comes with align and snap tools to make level editing with instances much easier!
Features
Apply delta transform to instances panel with duplicate option (new in 1.1.3)
Distribute/Line-Up instances (new in 1.1.2)
Convert between Static Mesh and Instanced Static Mesh (new in 1.1.0)
Experimental Blueprint Instances Editing support (new in 1.1.0)
Select/move/rotate/scale/add/remove instaces directly in editor viewports
Multi-edit supprt
Alt + Drag to duplicate instance
Marquee select
Select by axis
Focus to selected instance
Hide/unhide widget
Lock/unlock selection
Align selection by location/rotation
Align selection to grid
Snap selection by axis
Full c++ source code included, works with both Luancher and Github builds
Editor mode plugin, works with both c++ and blueprint only projects
@motorsep, thanks! The initial version is focus on more general level editing features with instanced static mesh like select/move/rotate/scale/align/snap/multi-edit, that been said, adding placement/painting feature sounds a very good idea, will definitely consider.
@MajorFailure, thanks! You might be insterested to know that I’m adding (Hierarchical) Instanced Static Mesh <-> Static Mesh Actor conversion functionality to InstanceTool:
Please ignore the reused icons, haven’t got time to make some
No, you have to use Foliage Mode tools to edit Foliage instances since there’re very specif logic and data structures behind Foliage instances editing. It’s technically possible to add Foliage instances support to Instance Tool (it was enabled in the initial test verison), but that means many duplicated code between Foliage Mode and Instance Tool Mode which could be messy and might not survive future engine update if implementation detail of Foliage Mode changed.
Is there any specifc functionalities Instance Tool has but lacking in Foliage tools? I think I can try extract them and submit pull requests to epic for them to consider merge in.
Would be nice if this tool would also generated (hierarchical) instanced static meshes based on the original static meshes with actor tag (HISMCs don’t work on mobile, so ISMCs is the only option for now).
For example, if I place 5 rocks and 10 pillars on the level, then select 5 rocks and press a button, an instanced static mesh BP would be created, containing 5 instanced of the rocks (with option in the Details panel to hide/unhide original meshes). Same goes for pillars.
@motorsep, yes, that’s exactly what I’m working on: adding (Hierarchical) Instanced Static Mesh <-> Static Mesh Actor conversion.
In your example, you can select 5 rockes and 10 pillars (there’s no need to set tag first), press “Convert Selected Actors to Instances” button, there’ll be 2 ISMC/HISMC actors created: one with 5 instances of rock, one with 10 instances of pillars. You can choose to turn these 2 actors into blueprints later.
There’ll options to hide original actors, or put original/converted actors into folder. I’m also thinking instead of creating new actors each time, there could be option to add instances to an existing ISMC/HISMC actor.
@motorsep, I’m packaging windows prebuilt plugin binaries in itch.io release (My Mac is too old to handle Unreal).
As Unreal Marketplace release, from what I’ve been told, they have built it on both Windows and Mac, so I assuem it’ll be released with both win and mac binaries.
As far as generated/converted (H)ISMC actors, they are just normal actors with (H)Instanced Static Mesh Components, they should works on whatever platform Unreal supported. (IIRC there’s software instancing emulation added on platforms without hardware instancing support since 4.6 or so)
@motorsep, I just released Instance Tool 1.1.0 on itch.io, two major features introduced in this version: ISM <–> SM converter, and Blueprint editing support (experimental).
And I finally sit down to start writing documentation for Instance Tool, wip version could be found here. Since the scope of Instance Tool is starting to glow beyond my original planning, I figure that it’ll require proper documentation sooner or later…
I submited the 1.0.1 version to Epic on Aug 23, and it was accepted and entering “code review” phase on Aug 26. I haven’t got any update on the review result since then. According the marketplace stuff I’m contacting, they got lots of code plugins to process, so it might still in the queue.
Thansk everyone who purchased Instance Tool on itch, your support really means a lot! And please do let me know if you run into any issues/difficulities when using Instance Tool.
@overlaps, do you installed Instance Tool as Engine plugin or Project plugin? Is it possible that you leave 1.0.1 version installed in project plugins folder?
Both About tab and Plugin Window should display 1.1.0
@Nate I’m installing it as project plugin and using one of default project templates. I’ve checked there was no plugins installed on engine folder. But just in case i’ll make a clean install right now.
ps. yep, clean install make it work as it should, ty!
Made a timelapse video to show some 1.1.0 features (1 click convert from static mesh to instanced static mesh, snap instance rotate to hit normal, select instance by axis with tolerance…)