title: 2D Bone system in XNA
body: <p>I am trying to write a 2D Bone system in XNA.</p>
  <p>My initial thought was using matrices to keep track of the rotations and positioning through out the bone tree so items could easily displayed.</p>
  <p>Cool I thought, and then dismay hit me in the face when I saw matrices could only be applied to single sprite <code>batch.Begin</code> call and not on a per draw call!</p>
  <p>I ran some performance tests to check if my dismay was desevered, and it was, calling <code>spritebatch.Begin</code> and <code>End</code> a bunch of time drops my frame rate by a huge (and unacceptable) amount.</p>
  <p>So, before drawing a single bones image I am going to have to construct its final position and rotation (and maybe scale in the future) manually. In this case would you still use matrices and somehow extract the information at the end just before drawing the bone? If so, any ideas on how to get the final information I need? Or would it be easier to try and construct it all from the raw positions and rotations of its parent nodes?</p>