Monday, November 13, 2017

Misalignments

Have you ever noticed that the Pointdexter enemy from Hydrocity Zone contains a slight error in its animation?


Each of Pointdexter's sprites are comprised of three sprite pieces: the front, the rear, and the torso. The torso has three different variations, one for each frame of animation: deflated, partially inflated, and fully inflated.


In practice, though, the arrangement of sprite pieces used in the partially inflated frame leaves a lot to be desired, when compared to the other two frames:


Here's what happened. The graphics for the partially inflated torso were squeezed into the smallest sprite they would fit in, a 3x3 square, in order to consume as little VRAM as possible. However, the sprite mappings applied to the graphics do not properly center the torso piece with the front and rear pieces. This is what it should look like:


This is an infrequent yet recurring error, which isn't limited to inbetween frames of an enemy's animation. Below are the sprites used for Sonic's super transformation. Pay special attention to the last two frames. Notice anything funny?


Here the developers once again identified an opportunity to squeeze Sonic's head into a 3x3 square. Why they only did so with the last two frames and not the grayscale counterpart before them is beyond me, but it just makes the oversight that much more obvious: the head piece is misaligned, apparently coerced into an 8x8 grid as with Pointdexter above.

So, what's going on? My theory is that the graphics were chopped up by hand, but whatever tool they used to generate sprite mappings could only output simple mappings broken up along an 8x8 grid, and these are simply instances where the developers forgot to go in and touch them up by hand.

2 comments:

  1. I thought that badnik looked weird with its animation, but I didn't pay too much attention.

    At least the error is more obvious than Knuckles moving forward a pixel when looking up.

    ReplyDelete