So I'm making an isometric game and have recently found that my frame rate is suffering and a big culprit is probably the number of vertex batches being sent to the GPU. So I have set all of my objects to be drawn by a single draw control object as the buildings, trees etc. are drawn using a set colour based on the time of day/night. This is working fine, however now my depths are all messed up, all objects draw with the depth = -y code which achieves this fine, however now I think all of the sprites are being drawn at one depth, the depth of the draw control object. I am using 'with' to draw the sprites relative to the object, how can I get them to draw at the depth of the object?