Download

Spawn actor from class performance

Hello,
out of curiosity i tried spawning a quiet big number of actors (pawns in this case)
i used the 1st person template map to experiment on
without any spawned actor i get 120 fps
with 50 actors it drops to 60-50, for 100+ it drop to 30-
so is the frame drop because of number of the spawning iterations or it’s because i spawned a big number of actors in a relatively small area?
i tried also to spawn a large number (1k) on a 10k*10k area and the framerate is at 15-10fps
so if the problem is comming from the n° of iterations, how does these open world games manage to spawn that large number of actors (foliage, pawns, static meshes …) without having the framedrop issue?
does they hide the things that are out of the player’s line of sight or what?
and btw i’m talking about just one relativly medieum to small one peace playable level not multiple streaming levels.
thankx

with Pawn you mean the UE4 Manequin?
It has 23.000 + Vertices.
Depends on the game, some things are hiden when u arent around them because why would you want your computer to calculate stuff for something that you dont see anyway? (because of distance)
They also reduce the vertices of objects that are not close (called LOD = Level Of Detail) -> https://en.wikipedia.org/wiki/Level_of_detail
“Instanced Static Mesh” helps you aswell -> https://www.youtube.com/watch?v=iC1sjgalEJg

50 Actors with 23.000 Vertices -> 1.000.000 Vertices. Thats a lot of calculation your computer does every frame.

first of all thnx for the fast reply

well i mean any humanoid type of pawns
i think the instanced static mesh could help a lot in this case
i’m familiar with LODs but i don’t think it’s gonna be usefull with the skeletal meshes

but just to be clear if i wasn’t enough
let’s take an exemple that i can think of: dayz (just to be clear i do not want to create something like that, i just want to understand the principle behind it)
dayz has a 12.5k² landscape (i think) with huge number of actors (houses, foliage, pawns (animals, zombies),etc …)
but being a multiplayer game i think it will be as much resource intensive to interpolate the line of sight of all players to get what actors to show every frame as spawning all of them at the same time, don’t you think so?

Why not? You dont need 20.000 Vertices for 100px. Its just about the view.

Im not sure if i undestood you correctly.
In the end your client calculates what you see and not what other player see and its costs a lot less than calculating millions of vertices for nothing.

I might be wrong… its just something i read about.

actually that was me being stupid
i don’t think why i assumed that the server has to do the calculations of all the clients :smiley:

thankx for the help