I am performance testing my iPhone app:
// using CATransaction like this goes from 14fps to 19fps
[CATransaction begin];
[CATransaction setDisableActions: YES];
// NEG, as coord system is flipped/messed up
self.transform = CGAffineTransformMakeRotation(-thetaWheel);
[CATransaction commit];
Question: why does disabling core animation's default behavior of interpolating between the old and the new transform matrix give such a performance boost?
What could they possibly be doing that could be so computationally expensive? Even if they are using the most elaborate technique in the world for interpolating between two matrices, I can't believe this would amount to 5fps?!
I can't imagine the process is anything other than M_resultant = k*M_last + (1.-k)*M_target