A Guide to the Graphics of the Sega Mega Drive / Genesis

Return to Table of Contents

Vertical Scaling

The VDP doesn’t support regular two-dimensional scaling, but it does support vertical scaling of the background planes. This is another raster effect, achieved by changing the vertical scroll offsets in VSRAM while the VDP is in the middle of rendering a frame. If, each scanline, the vertical scroll offset is changed, the background plane will appear either stretched or contracted in the vertical dimension. The degree of scaling can be adjusted each frame to create vertical scaling animation.

Here’s a classic example from the title screen of Gunstar Heroes:

The title screen from Gunstar Heroes, showing vertical scaling.

The title uses vertical scaling combined with darkening color palettes to strongly create the impression of a spinning 3D object.

Let’s look at two bosses from Alien Soldier that are animated with vertical scaling. First, the stage 13 boss:

The stage 13 boss from Alien Soldier. The wings are actually drawn to Plane B and animated with vertical scaling.

The boss’s body is drawn with sprites, but its wings are drawn to Plane B. The wing tiles are the sole tiles on Plane B, and they are animated using vertical scaling. Each scanline, the vertical scrolling offset is changed to scale the wings. If we isolate Plane B (64 x 32 tiles in size), we can see that it holds only the tiles for the wings:

Plane B from the above Alien Soldier example.

These Plane B tiles remain static throughout, although the colors change. Notice in the video that, depending on the angle of the wings, the shading changes. This is done by changing the color palette each frame.

The stage 6 boss from Alien Soldier also has some clever use of vertical scaling. Notice the way the boss’s body stretches and contracts vertically as it jumps:

The stage 6 boss from Alien Soldier. The boss’s body is actually drawn to Plane B and animated with vertical scaling.

Here, the boss’s limbs are drawn with sprites, but its body is drawn entirely to Plane B. Here is Plane B isolated:

Plane B from the above Alien Soldier example.

Again, the tiles of Plane B remain static (aside from the eyes and mouth, which are animated). Vertical scaling is applied to stretch and contract the body.

In both of these examples from Alien Soldier, it at first appears that these bosses are drawn with sprites. However, that’s not the case. Instead, the scaled portions of the bosses are drawn to Plane B, and the horizontal and vertical scroll offsets are manipulated to move the boss around the screen and scale it.

An effect similar to vertical scaling is used in this scene from the second stage of Castlevania: Bloodlines:

The water moves in this scene from Castlevania: Bloodlines by cutting and shifting a portion of the plane.

Here, a portion of the plane is being ‘cut’ and shifted (i.e., scrolled independently) to create the impression that the water is lapping against the platforms that the player is walking across (the effect is enhanced with shadowing). Without being shifted, the plane actually looks like this:

Plane A without shifting from the above Castlevania: Bloodlines example.

The lower portion of the plane is being shifted independently of the upper portion to make it seem like there is a waterline.

Here is another example of this cutting and shifting from Battle Mania 2:

An example of cutting and shifting from Battle Mania 2.

Notice that the lower jaw of the truck’s mouth is vertically scrolling separately from the rest of the truck. This truck is drawn to a plane, not sprites.

Next: Sprite Raster Effects

Return to Table of Contents

List of Effects:
  1. Introduction
  2. Full-Screen Scrolling
  3. Row / Column Scrolling
  4. Line Scrolling
  5. Animation
  6. Multi-Jointed Characters
  7. Tilting / Rotation
  8. Scaling
  9. Shadow and Highlight
  10. Transparency
  11. Silhouette
  12. Palette Swapping
  13. Vertical Scaling
  14. Sprite Raster Effects

Want to post a comment? You can do so here.