pub type SpriteDrawFunction = unsafe extern "C" fn(sprite: *mut LCDSprite, bounds: PDRect, drawrect: PDRect);