$begingroup$

So, I’ve spent the last few weeks reading up on animations and what alternatives I have to the Animator component since it’s performance is awful. So far I have not found an alternative that would fit my scenario.

I am making an RTS and will have hundreds of units animating on screen. Using Animator and skinned meshes is not an option due to the horrible performance. So my option are:

  1. Use legacy Animation system. While this might improve performance, it’s not enough. Also using a legacy anything just feels weird.
  2. Use a crowd-animation asset or make my own compute shader that creates textures for each animation and then can be used as a simple mesh, allowing batching. This is great for performance, a bit scrit-heavy but thats fine. My issue with this option is that it will not use IKs since it takes in the animation data without any post-processing like IKs, and if you use animations from Mixamo or assets, youll have issues like feet-shuffle that can only be solved with foot-IKs.
  3. Using ReadPixels (https://docs.unity3d.com/ScriptReference/Texture2D.ReadPixels.html) to render the animations into image files like .png and then use them as sprites. This is an option that would let me take advantage of foot-IKs. However I cannot find any information on how to begin an approach here, and this is where I could use some help. Is there any resource out there that does this or shows how it is done?

Other than that, just any solution that will let me play hundreds of animations without losing foot-IKs is what I need, so any information surrounding that is appriciated.

$endgroup$

1