Download

Does instancing provide any performance benefit at all?

I’m trying to figure out instancing in UE4, from what I’ve read UE4 supports it but for some reason I’ve never gotten any performance benefit from it at all. What I’m trying to is create a huge forest with thousands of detailed trees being rendered at once, but so far the framerate is, well, what you’d expect:P Somewhere I read that instanced meshes have the same performance hit as rendering a single triangle, but in UE4 it doesn’t seem to work this way.

Does UE4 support instancing?

Are you using hierarchical instanced static mesh components or a foliage tool? Otherwise engine won’t know if you want to use instancing or not.

Foilage tool, I didn’t know there was another way.

Yeap, there is this:

And there is more advanced Hierarchical version of it. There should be some tutorials on YouTube but otherwise it’s pretty straightforward.

Thank you so much, I had no idea you could do it outside of the foilage tool. I’ll try it out and see if the performance is any better.

We hand hundreds of thousands of trees and have no problems with performance. Without instancing (using foliage tool) we wouldn’t have any fps at all. Why would it exist if there is no performance gain?

Hmm, how many polys does your tree have? The tree model I’m using has about 10k (it doesn’t have any lods though)

We have over 70 different species of plants and trees. The trees range from 1000 to 10 000 polys but they have LODS of course. I think that’s your problem.

Even with instancing you need to limit the amount of polygons. Instancing helps manage memory/draw calls

I am using the foliage tool, a few thousand of the same tree and there goes my FPS. It uses LoDs and I’ve even limited the draw distance. Is there something I’m missing?

Is that all instancing does in UE4? I was thinking of instancing shown in some other engine demos I’ve seen, like this one: Brigade Update from OTOY's Presentation at NVIDIA GTC 2015 - YouTube
I can’t add lods because the player will be seeing the trees from above and I can’t have them be just billboards.

Instancing is performance increase for objects that are used more than once. More polygons lowers performance either way

You need to provide more information. How many tris per LODs? What kind of lights and other stuff like DFAO and such do you use? What kind of machine? There are a lot of things that can affect performance and while Instancing helps tremendously it’s not magic.

Highest LoD is ~12k and lowest LoD is billboards IIRC. Under dynamic lighting without DFAO. GTX 960m but I doubt 5FPS is supposed to be what I’m having.

Which version?