When I create Instanced Static Mesh via menu Actor/Merge, It creates actor with instanced static mesh component as child. By clicking on it in engine view I can select and move individual instances, which is good and intended, but I cant select parent actor. I can do that only in Outliner, which can be problem in case I have hundreds of actors there. Which one is the right one? Is there way how to select its parent from engine view, not just individual instance?
When I create ISM from Houdini via Houdini engine plugin, I can select parent actor from engine view by clicking on this object, but I cant work with individual instances (I can see them in array of ISM and change transformations there, but cant be worked with in engine view). Why is this behaving in exactly opposite way in compare to 1)? Is there way to change it?
Bro, (or Sis I guess), I have been working with ISMs for about a month now and hereās what Iāve found. Unreal devs, feel free to weigh in with some explanation:
InstancedStaticMeshes (ISMs) created in the editor by the editor have the new functionality that allows you to select a single instance of the ISM and move it around. Very cool, really handy. You can use Alt-Drag to create more instances but you canāt click on one Instance and have it select the parent actor.
ISMs created via blueprint or code (Or Houdini I posit) have the āoldā functionality where you cannot move each individual instance via the editor and instead when you click on one it selects the parent and highlights all of the instances.
I have been creating a lot of ISMs via code and I find this functionality frustrating. If there was a way to switch back and forth between those two modes that would be awesome.
Hint: If you create an ISM via Blueprint/code/Houdini, by adding an instance in the editor (Via the little + button (Add instance) in the ISM component) it instantly switches āmodesā. You can now select each individual instance, but you cannot go back to the previous mode where clicking on one selects the actor.
Thanks for hint, at least something! To me it seems like some unfinished refactoring and this functionality isnt properly documented. And exactly as you told, it is quite needed to unify the behaviour and keep both āmodesā of working.
The difference between ISM created by Actor/Merge/Batch menu and those by Blueprint/Houdini is whether the Instance Hit Proxy is generated.
I add NewISMC->bHasPerInstanceHitProxies = true; in HoudiniEngineBakeUtils.cpp before OutBakeStats.NotifyObjectsCreated(InISMC->GetClass()->GetName(), 1); and now ISM actors baked by HDA works the same as Acto/Merge/Batch.
I never try it in blueprint but the idea is to turn on the flag to generate instance hit proxy.