Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

change Staic mesh actors for HISM


I have create this BP that I would like to share and also ask for help to improve it. (link to the forum )

This is inspired on Rama's Instanced Static Mesh Editor Feature.

This BP take a lot of mesh actors from the level (all should be the same, and have the same Tag) and replace all of them for one unique Hierarchical Instanced Static Mesh (HISM) or just a ISM

In the sample we have 6000 cones, that before use the BP have 40FPS and with the BP can be play at 120 fps since we change that 6000 drawing call to only 1.

alt text alt text

right now this only work at begin of play, so it's really good to edit since each copy is independent and can be edited until we compile the game, in very non destructive way

alt text

So since this is working I shared here. link to the BP

The problem is if you need o bake the light maps, since the replacement of geometry is done at run time, it can't be calculated at the swarm agent. Of course this is not a problem with dynamic lighting.

I have two ideas to solved, I hope someone can help me on with that.


  1. assign in some way the lightmap from the original object to the instanced mesh. Pros: Is non destructive process like before but keep the lightmaps. Cons:the optimization is only at runtime.

  2. build a BP that takes all the transformations and store in a unique DataTable or similar and, create a second BP that reads that data table to spawn the geometry on the construction instead of the begin play. Pros: the optimization will also affect to the editor screen during the development. Cons: This will be kind of destructive since once done we will lose the original actors that can be easily edited

Of course the idea is do it by BP as Rama show by C++ it's posible.


Product Version: UE 4.19
more ▼

asked Apr 02 '18 at 02:58 AM in Blueprint Scripting

avatar image

36 1 10 9

avatar image Dark_Jubei May 02 '19 at 08:46 PM

I've been looking for something that can do exactly this, i need to instance out single objects that are made up of thousands of smaller objects and its killing the fps.

I'm gonna check it out now, thanks for the upload!

avatar image geverk May 03 '19 at 01:35 AM

Hi, in fact, was really easy, at the BP you have before you just need to activate at that function the call in the editor. if you do it, you can run that function in the editor

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

0 answers: sort voted first
Be the first one to answer this question
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question