When I think about Armature modifier performance (which is on the slower end, viewport response-wise), I wonder if it has to iterate through every vertex per each bone in the skeleton, or the process is somehow more optimized? Because as I understand, it first calculates bone transformations for entire mesh, and then blends those results in linear fashion based on vertex groups’ intensity. I like using hundreds of bones for my characters, but it probably means I’m shooting myself in the foot
Yes. The more bones you have, the slower the performance - but the number of vertices impact the performance even more (which is why you should only really be rigging re-topologized/baked models.). It calculates the transform for each bone, and then applies that transform to all vertices with a weight for that bone… the only optimization is that vertices with 0 weight get ignored… which isn’t that much of an optimization.
Good luck.
Okay. I’ll try to avoid unoptimized meshes like decimated sculpts
Just to add, bones with “deform” disabled don’t appear to contribute to this performance cost, so it’s fine to use as many non-deforming bones as you want.
That’s useful