2 single sprites in array increase draw calls infinitely!?

I have a 2D zombie shooting game using various artwork and animations.

When i start the game it begins with 6 drawcalls for the turret that shoots,background, a button, and some GUI stuff.

Then i have IDENTICAL zombies spawn continuously which adds one draw call because all the zombie animation sprites are in a “multiple” Sprite Mode Sprite(atlas?)

When i shoot a zombie, a blood decal SINGLE sprite is spawned at the zombie position from an array variable inside a script attached to the zombie.

Here’s my issue:

If the array contains only ONE blood decal sprite, then the draw call goes up by ONE when it’s spawned and stays the same afterwards no matter how many times the blood decal is spawned again.

HOWEVER if i have TWO single blood decal sprites in the array and they’re spawned randomly, one or the other whenever i shoot a zombie, the number of draw calls KEEPS INCREASING!!!

How do i prevent this? it’s obviously quickly killing my performance! I don’t understand why this happens?

If having ONE blood decal in the array causes the draw call count to go up by ONE and stay there, why do TWO blood decals in the array not cause it to go up by 2 and stay there once they’ve both been spawned, why does the draw call count keep increasing?

Thanks :slight_smile:

I used texture packer to make sprite sheet of all blood to fix this, but still strange to me why the draw call count kept going up forever instead of only increasing by 2…