I would expect more one draw call per “whole skeleton”, not per bone, in the current UE implementation. But still one per mesh / per char. So that it would be relative to count of (meshes x characters x pass count) , indeed I was not talking of passes, but shadows, etc cannot be rendered on same pass.
Well, yes. The count for shadows would probably be 1 drawcall each.
And theoretically, so should each mesh.
(But you’d notice that throwing the mesh in an empty level there would be no light to cause a shadow…)
Either way, when shadowing many skeletal meshes its often best to set up the PHAT asset primitive to cast a decent replacement shadow than it is to cause the actual mesh to cast a shadow.
Ideally, I’d do that distanced based as well:
There’s no need to use complex and accurate shadows past 20m from the camera unless the skeletal mesh is scaled to be a giant…
As always in game design the look/feel is a function of optimization vs quality…
That’s why in 2022 even on the latest 3090 you have GDC launch trailers being pre-rendered and looking like real life, and when you buy the game you have a 1984 Duck Hunt…
There is approximately one draw call per skeletal mesh component.
If you make your character of 10 different swappable components, you can either draw 10 separate components, which is easy and works fine for 10-20 characters, or you can merge the components all into one “draw call” (assuming they all have the same material) at the high level, but the engine may draw a thing more than once per “draw call” because of the way shadows, occlusion, gbuffers, and other eye candy works.
Check out the section of
FSkeletalMeshMerge here: Working with Modular Characters | Unreal Engine Documentation for how to most efficiently render a modular skinned character.