I have a scene in which one of the actors spawns grid made out of 100 actors (so a 10x10 grid). Each actor is the same and it’s made out of 5 cubes. 1 cube is scaled to 1.5x1.5x0.1 and other are scaled to something different (doesn’t matter, more below). This set is causing extreme performance issues for what is relatively no geometry. Details on ss below. I tried following:
make sure there’s no overlapping
removed materials (provied from starting assets)
removed scaling on those cubes
made them cast no shadows, be ignored in occlusion and have no collision
tried just placing 100 of them instead of spawning them
Nothing helped. GPU time is still insanely high (I have a 2080Ti so it’s absolutely not hardware caused, also tried on 2 different pcs) for what’s actually on this scene. Showing some stats on those ss below, but I don’t really know how to read them. Any ideas? They are just primitive meshes with default settings…
Hi
I recommend you to use a different approach when it comes to having that many objects
take a look at Static Mesh Instancing feature in Unreal. i am not sure going to help your case or not since you didn’t give us enough information about your project or the purpose of your test. till then maybe this links can help. Cheers!
thanks for the links, looks very interesting. However, it’s still baffling to me that such approach is even neccessary in this case. This is litreally 500 simple meshes, all using same, debug material, that we’re talking about here. It’s not their logic, since they have no logic at all (attaching ss of the bp as a proof, children of this class don’t expand on the logic at all). I’m also attaching screenshot of the actual placed actor. Also, the bottleneck is clearly on GPU, if it would be Blueprint causing the issue, wouldn’t CPU time go up instead?
Additionally, as for the Instance static mesh, if I understand correctly it’s mostly to help with draw calls taking a lot of time and for me they don’t. On my main scene draw calls take < 0.5ms. If any additional info is needed to try and pinpoint the issue, please let me know :). Thanks for the answers so far.
120fps. There must be something else going on. Do you have ANY other actors in the scene apart from light? ( I see fog, and some functions in the parent… )