DrawRotatedBitmap rendering error when rendering out of bounds at specific angles

I found a rendering error that happens only in a very specific case.

When you render a bitmap rotated 90 degrees exactly partially out of the right side of the screen (or a bitmap rotated 270 degrees partially out of the left side of the screen), a rendering artefact occurs. The gif below demonstrate this error:
RenderingError

(This error has only been tested on simulator, and I don't know if it occurs on console as well)

I am experiencing a similar issue with playdate.graphics.image:drawRotated

error

In the gif, I have images that are from an image table being drawn within an image-less-sprite's drawFunction. The images are being rotated. When they leave the screen, the image becomes invisible (even though the sprite's isVisible property remains true). In the gif, you can see an invisible image return to the screen (after being forced out of bounds) as just an unfilled circle (I am drawing these primitive circle shapes for debugging purposes).

There appears to be no way to solve this issue using the existing SDK

Literal edge cases. :stuck_out_tongue: My hunch is the two aren't related (not that that matters at all) but they're equally annoying. It's in the tracker now, will fix as soon as I can.

2 Likes