Follow

    Sprite Scaling

    Concept »

    Whether it's Super Scaler or Mode 7, growing and shrinking sprites/textures is a concept often used in sprite-based games. It was a popular technique used to create three-dimensional games with sprites, mostly during the 16-bit to early 32-bit eras. Sprite-scaling was an early form of 3D texture-mapping.

    Short summary describing this concept.

    Sprite Scaling last edited by PlamzDooM on 08/01/21 07:50PM View full history

    Overview

    As game hardware improved, sprite scaling became a popular technique, first for arcade games in the 1980s, and then for console and computer games in the 1990s. Scaling allowed for characters, items, or other sprites to smoothly grow or shrink on the fly, allowing the development of three-dimensional games using sprites. Sprite-scaling was an early form of 3D texture-mapping.

    History

    The first games to use sprite-scaling were arcade driving/racing games, by companies such as Sega and Namco; some of the earliest examples include Sega's Fonz (1976) and Turbo (1981), and Namco's Pole Position (1982). Some of the earliest action games to make use of extensive sprite-scaling were Sega's SubRoc-3D (1982) and Buck Rogers: Planet of Zoom (1982).

    Super Scaler

    After Burner, released for the Sega X Board arcade system in 1987. Its Super Scaler technology featured advanced sprite scaling and rotation capabilities.
    After Burner, released for the Sega X Board arcade system in 1987. Its Super Scaler technology featured advanced sprite scaling and rotation capabilities.

    See: Super Scaler

    Sprite-scaling was later popularized by Sega's powerful Super Scaler arcade graphics boards, which were capable of scaling thousands of sprites every second; some of Sega's popular Super Scaler arcade games included Hang-On (1985), Space Harrier (1985) and Out Run (1986). With After Burner (1987), Sega introduced sprite rotation, adding greater three-dimensional depth. They continued producing hits such as Thunder Blade (1987), Galaxy Force (1988) and Last Survivor (1988).

    Following the success of Sega's Super Scaler games, rival arcade developers such as Konami, Namco and Taito began producing their own sprite-scaling arcade games in the late 80s.

    X68000 and Neo Geo

    Knight Arms, released by Arsys Software for the Sharp X68000 computer in 1989, made use of sprite-scaling graphics.
    Knight Arms, released by Arsys Software for the Sharp X68000 computer in 1989, made use of sprite-scaling graphics.

    See: Sharp X68000 and Neo Geo

    Among home gaming systems, the Sharp X68000 computer (launched 1987) was capable of smooth sprite-scaling, though it wasn't able to scale as many sprites as Sega's Super Scaler arcade systems.

    SNK's Neo•Geo arcade-based console (launched 1990) was notorious for utilizing sprite scaling in its fighting games to simulate a camera "zooming" in and out of the actions depending on how close the combatants were to each other.

    Mode 7

    Doom, released for PC in 1993, uses software to project and scale sprites in its 3D world.
    Doom, released for PC in 1993, uses software to project and scale sprites in its 3D world.

    See: Mode 7

    Another popular type of sprite-scaling was Mode 7, used to scale and rotate backgrounds for various games on the SNES console (launched 1990).

    Billboarding

    See: Billboarding

    While long past its heyday, sprite-scaling is still used today in polygonal 3D games, in the form of billboarding. This technique was commonly used for rendering trees in early 3D games, although this has become less common in modern games. It is still frequently used when rendering smoke and fire.

    Hardware Capabilities

    This is a table listing the sprite scaling/zooming and rotation/mirroring capabilities of various classic gaming systems and/or graphics chips. Only systems and chips with hardware support for some form of hardware zooming/scaling or rotation/mirroring are listed here.

    Integer zooming (including 1/2/4/8× vertical and 1/2/4/8× horizontal) indicates that sprites can only be zoomed in terms of integers (such as doubling or quadrupling), rather than smooth scaling. Voltage control indicates an analog method of smooth scaling through hardware voltage control. Anisotropic and affline indicate smooth scaling, i.e. what usually comes to mind when thinking of sprite scaling. Similarly for rotation effects, screen orientation means the screen can only be rotated in right-angles, while mirroring means it can only be flipped, whereas affline indicates smooth rotation.

    For the other sprite capabilities of these systems and chips, see here. For a full detailed table of sprite capabilities, with references, see here.

    Systems / Chips
    YearZooming / ScalingRotation
    Fujitsu MB1424119751, 2× vertical, 1, 2× horizontalScreen orientation
    Atari 260019771, 2, 4, 8× horizontalHorizontal mirroring
    Taito Z801977NoScreen orientation
    Atari 8-Bit & 520019791, 2× vertical, 1, 2, 4× horizontalNo
    Namco Galaxian19791, 2, 3× vertical, 1, 2, 3× horizontalHorizontal and vertical mirroring
    ColecoVision, MSX, Sega SG-100019791, 2× integerNo
    Namco Pac‑Man1980NoHorizontal and vertical mirroring
    Sega G801981Vector scalingScreen orientation
    Sega VCO Object1981Voltage control scalingBackground tile mirroring
    Commodore 6419821, 2× integerNo
    Namco Pole Position1982Yes, anisotropicHorizontal and vertical mirroring
    Sega 315‑5011 & 315‑50121982Yes, anisotropicHorizontal and vertical mirroring
    Famicom / NES1983NoHorizontal and vertical mirroring
    Amiga (OCS)1985Vertical by display listNo
    Sega Master System & Game Gear19851, 2× integer, 1, 2× verticalBackground tile mirroring
    MSX219851, 2× integerHorizontal and vertical mirroring
    Sega OutRun1986Yes, anisotropicHorizontal and vertical mirroring
    Namco System 21987Yes, anisotropicYes, affine
    PC-Engine / TurboGrafx-161987NoHorizontal and vertical mirroring
    Sharp X6800019871, 2× integerHorizontal and vertical mirroring
    Sega X Board1987Yes, anisotropicYes, affine
    Taito Ninja Warriors1987NoHorizontal and vertical mirroring
    Taito Z System1987Yes, anisotropicHorizontal and vertical mirroring
    Capcom CPS1988NoHorizontal and vertical mirroring
    Sega System 241988Yes, anisotropicHorizontal and vertical mirroring
    Sega Y Board1988Yes, anisotropicYes, affine
    Taito B System1988Sprite shrinkingHorizontal and vertical mirroring
    MSX2+ & MSX TurboR19881, 2× integerHorizontal and vertical mirroring
    Sega Mega Drive / Genesis19881, 2× integerHorizontal and vertical mirroring
    Fujitsu FM Towns19891, 2× vertical, 1, 2, 3, 4, 5× horizontalHorizontal and vertical mirroring
    SuperGrafx1989NoHorizontal and vertical mirroring
    Amstrad Plus19901, 2, 4× vertical, 1, 2, 4× horizontalNo
    Neo Geo1990Sprite shrinkingHorizontal and vertical mirroring
    Sega System 321990Yes, anisotropicYes, affine
    Super Famicom & SNES1990Background, affineBackground affine rotation and sprite mirroring
    Amiga (AGA)1992Vertical by display listNo
    Taito SZ System1992Yes, anisotropicHorizontal and vertical mirroring
    Atari Jaguar1993Yes, anisotropicYes, affine
    Capcom CPS21993NoHorizontal and vertical mirroring
    Sega Saturn & ST-V1994Yes, anisotropicYes, affine and distortion
    Sony PlayStation1994Yes, anisotropicYes, affine
    Capcom CPS31996Yes, anisotropicHorizontal and vertical mirroring
    Data East MLC System1996Yes, anisotropicHorizontal and vertical mirroring
    Hyper Neo Geo 641997Yes, anisotropicYes, affine
    Game Boy Advance2001Yes, affineYes, affine
    Nintendo DS2004Yes affineYes, affine
    Systems / ChipsYearZooming / ScalingRotation
    sizepositionchange
    sizepositionchange
    positionchange
    positionchange
    positionchange
    bordersheaderpositiontable
    positionchange

    This edit will also create new pages on Giant Bomb for:

    Beware, you are proposing to add brand new pages to the wiki along with your edits. Make sure this is what you intended. This will likely increase the time it takes for your changes to go live.

    Comment and Save

    Until you earn 1000 points all your submissions need to be vetted by other Giant Bomb users. This process takes no more than a few hours and we'll send you an email once approved.