If converting e.g. around 100 editor placed meshes into blueprint, it gets much laggier to move the blueprint around when compared to grouped meshes. Also when changing settings in the blueprint (like cullling for all meshes at once) there is ~2-10min freezes (after changine the setting and when compiling). When compared to group of meshes, blueprint is around 10-100 times slower.
I tried this now in empty project and its easy to repro just by adding e.g. 800 cubes on map. Then select those and try move around, it should be still smooth (at least it is with my comp). But then after converting those selected cubes to blueprint, it gets very laggy to move those around as blueprint. There is no nodes or anything in event graph. Also if you try change any settings for the meshes inside that blueprint, the editor freezes for very long time.
We have not heard from you in several days. I am marking this as answered for tracking purposes. If you are still experiencing this error, please comment with the requested information.
Have you tried creating the blueprint with instanced meshes instead of static meshes? Having a significant amount of mesh components within a single blueprint will inevitably cause a slowdown in performance, changing these out for instanced meshes should help resolve that.
I thought the “convert selected components to blueprint class” would have done that since the components that were converted were intances (at least it says that in details). But seeing now that isnt the case.
So looks like this was false flag. I made blueprint with much instances and worked smooth now. If that “convert selected components to blueprint class”-function would still automatically use instancing it would help much. Since seems like that limitation make using that much more limited.
Is there some trick to quickly replace selected meshes in blueprint to use instancedStaticMesh-component instead for meshes that are repeating?
Anyway big thanks for help. Will head to make sure my blueprints to use as much instancing as possible.
Unfortunately I do not believe there is a quick way to do this. Instanced meshes are treated differently than standard static meshes. I will mark this as answered for tracking purposes. If you experience a similar error with the instanced meshes, please comment here and I’ll be happy to take another look.