What contributes to draw call count?

We've probably all heard the advice to keep the draw call down, maybe by flattening nodes (see various "What's new in SceneKit?" WWDC videos over the years). I've been exploring what contributes to the draw call count because in my app it very quickly hits 100+, even with only a relatively small number of objects in the scene and the recommendation is to keep it in the low 10's. The scene is intended to have many more objects in it, so the draw call is on track to go into the 1000's. To try to understand it better, I've got a simpler secondary scene which is just a floor and one instance of my character. The character is two meshes (a static mesh object and an animated mesh character), both of which have multiple materials. And yet my draw call count is already 30.


Is there such a thing as a formula for determining (or approximating) draw call count? It doesn't seem to be linearly related to mesh count.


e.g.

draw calls = lights × (meshes × materials + animations)


Would a single material per mesh, applied as a UV texture bring the count down? I was expecting two or three calls for my object + character combination.