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 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 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:
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:
Here, the boss’s limbs are drawn with sprites, but its body is drawn entirely to Plane B. Here is Plane B isolated:
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:
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:
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:
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.
List of Effects:
- Full-Screen Scrolling
- Row / Column Scrolling
- Line Scrolling
- Multi-Jointed Characters
- Tilting / Rotation
- Shadow and Highlight
- Palette Swapping
- Vertical Scaling
- Sprite Raster Effects
Want to post a comment? You can do so here.