Download

Animset limits and performance?

I know about some limits in, for example, the total of bones for a skeletalmesh (more than 75 is an aditional drawcall), or the 65000 vertex per model, etc.

But about animsets, there are some limit? My current one has about 200 animations, and I have some doubts, for example:

  • It’s better to have a unique animset or to have the animations spread over several animsets? For example in one animset the most played animations, the used in animtrees, and in other the animations used less often. Or it’s irrelevant?

  • The engine does a search to play animations every time that playcustomanim is used, or the animations are parsed into the bytecode and there are no search?

Perhaps it’s a good option to have all the animtree animations in one animset, and the playcustomanim ones in another animset.

I have done some tests, by removing animations from the animset, and the performance is the same… but I’m not sure totally, so I appeal to your wisdom.

Can’t answer your question with respect to performance and limits and size but ask yourself this.

Assuming an inefficient search for an anim how many times must it be performed, like do 20 different characters need to do a search and change anim continuously and every second … probably not.

I’d guess a search of a 200 long list is not noticeable as its not performed continuously. For example if a character is in idle & he plays an idle anim for x seconds or is walking he’ll play the walk for x seconds until a change is required. So if you have a 5 second idle anim and 20 charcaters playing it and after 5 seconds you wnat to change to a new anim would you really expect to see a frame rate hit if all 20 needed to change anim at exactly the same time (which I’d guess is unlikely and not a frequent occurrence).

I have different animsets/trees not for every character but for those which are logically different even if they use the same imported anim, yes it means repeated anims etc just my preference.

Another thing to ponder, say you release your game in 12 months, thats another 12 months for people to have upgraded their PC’s and cpu’s so they’ll have more CPU bandwidth to breeze through a simple repeated search, I suspect you are not supporting 7 year old pc architecture …

Too many other things to do or to worry about in games development so I’d suggest if you can’t see any issue then nobody else will.

Yes, probably the performance lost are insignificant. When the animset will have 500 animations I will do another test :slight_smile: