Mode 7

Last updated
This basic Super NES demo uses Mode 7. Mode 7 Test-0000.png
This basic Super NES demo uses Mode 7.

Mode 7 is a graphics mode on the Super Nintendo Entertainment System video game console that allows a background layer to be rotated and scaled on a scanline-by-scanline basis to create many different depth effects. [1] It also supports wrapping effects such as translation and reflection. [2]

Contents

The most famous of these effects is the application of a perspective effect on a background layer by scaling and rotating the background layer in this manner. This transforms the background layer into a two-dimensional horizontal texture-mapped plane that trades height for depth. Thus, an impression of three-dimensional graphics is achieved.

Mode 7 was one of Nintendo's prominent selling points for the Super NES platform in publications such as Nintendo Power and Super NES Player's Guide. [3] Similar faux 3D techniques have been presented on a few 2D systems other than the Super NES, in select peripherals and games.

Overview

The Super NES console has eight graphics modes, numbered from 0 to 7, for displaying background layers. The last one (background mode 7) has a single layer that can be scaled and rotated. Two-dimensional affine transformations can produce any combination of translation, scaling, reflection, rotation, and shearing. However, many games create additional effects by setting a different transformation matrix for each scanline. In this way, pseudo-perspective, curved surface, and distortion effects can be achieved.

Mode 7 graphics are generated for each pixel by mapping screen coordinates to background coordinates using an affine transformation and sampling the corresponding background color. The 2D affine transformation is specified for each scanline by 6 parameters: , , , and ( which together define the matrix ), and and (which define the vector , the origin). Specifically, screen coordinate is translated to the origin coordinate system, the matrix is applied, and the result is translated back to the original coordinate system to obtain .

In 2D matrix notation:

.

All arithmetic is carried out on 16-bit signed fixed point numbers, while all offsets are limited to 13 bits. The radix point is between bits 7 and 8.

Usage in games

This graphical method is suited to racing games, and is used extensively for the overworld sections of role-playing games such as Square's popular 1994 game Final Fantasy VI . The effect enables developers to create the impression of sprawling worlds that continue toward the horizon.

A particular utilization technique with Mode 7 allows pixels of the background layer to be in front of sprites. Examples include the second and fifth stage of Contra III: The Alien Wars , the second and fifth stage of Jim Power: The Lost Dimension in 3-D , the introduction screen of Tiny Toon Adventures: Buster Busts Loose , when a player falls off the stage in Super Mario Kart , some cinematics in Super Metroid , and in some boss battles in Super Mario World .

Mode 7-type effects can be implemented on the Super NES without the hardware acceleration of Mode 7, such as Axelay's rolling pin vertical scrolling; and then it uses Mode 7 in one boss and in the end credits sequence. [4]

Many Mode 7 games were remade for Game Boy Advance using effects implemented by software.

The Sega Genesis has no hardware-native feature comparable to Mode 7. However, as in Tales of Phantasia and Star Ocean's sprite effect add-ins, some comparable technical feats were programmed entirely in software, as in Dick Vitale's "Awesome, Baby!" College Hoops and Zero Tolerance . [5] The Sega CD, an add-on for the Genesis, added scaling and rotation support on hardware level, as used by Sonic CD and Formula One World Championship: Beyond the Limit . Similarly, such Amiga games include Mr. Nutz: Hoppin' Mad , Lionheart , Obitus , and Brian the Lion .

Filip Hautekeete and Peter Vermeulen created a demo showcasing an emulated interpretation of the Mode 7 graphics mode found in the Super NES to test the hardware capabilities of the Atari Jaguar. [6] Impressed with the demo, Atari Corporation decided to make a game that combined F-Zero and Super Mario Kart with a "cutesy" atmosphere, becoming the starting point of Atari Karts . [6]

Selection of Mode 7 games

See also

Related Research Articles

<span class="mw-page-title-main">2D computer graphics</span> Computer-based generation of digital images

2D computer graphics is the computer-based generation of digital images—mostly from two-dimensional models and by techniques specific to them. It may refer to the branch of computer science that comprises such techniques or to the models themselves.

<span class="mw-page-title-main">Affine transformation</span> Geometric transformation that preserves lines but not angles nor the origin

In Euclidean geometry, an affine transformation or affinity is a geometric transformation that preserves lines and parallelism, but not necessarily Euclidean distances and angles.

<span class="mw-page-title-main">Parallax scrolling</span> Technique in computer graphics

Parallax scrolling is a technique in computer graphics where background images move past the camera more slowly than foreground images, creating an illusion of depth in a 2D scene of distance. The technique grew out of the multiplane camera technique used in traditional animation since the 1930s.

<span class="mw-page-title-main">Multivariate normal distribution</span> Generalization of the one-dimensional normal distribution to higher dimensions

In probability theory and statistics, the multivariate normal distribution, multivariate Gaussian distribution, or joint normal distribution is a generalization of the one-dimensional (univariate) normal distribution to higher dimensions. One definition is that a random vector is said to be k-variate normally distributed if every linear combination of its k components has a univariate normal distribution. Its importance derives mainly from the multivariate central limit theorem. The multivariate normal distribution is often used to describe, at least approximately, any set of (possibly) correlated real-valued random variables each of which clusters around a mean value.

<span class="mw-page-title-main">Row and column spaces</span> Vector spaces associated to a matrix

In linear algebra, the column space of a matrix A is the span of its column vectors. The column space of a matrix is the image or range of the corresponding matrix transformation.

<span class="mw-page-title-main">Linear independence</span> Vectors whose linear combinations are nonzero

In the theory of vector spaces, a set of vectors is said to be linearly independent if there exists no nontrivial linear combination of the vectors that equals the zero vector. If such a linear combination exists, then the vectors are said to be linearly dependent. These concepts are central to the definition of dimension.

<span class="mw-page-title-main">Normal (geometry)</span> Line or vector perpendicular to a curve or a surface

In geometry, a normal is an object that is perpendicular to a given object. For example, the normal line to a plane curve at a given point is the line perpendicular to the tangent line to the curve at the point.

<span class="mw-page-title-main">Covariance matrix</span> Measure of covariance of components of a random vector

In probability theory and statistics, a covariance matrix is a square matrix giving the covariance between each pair of elements of a given random vector.

<span class="mw-page-title-main">Translation (geometry)</span> Planar movement within a Euclidean space without rotation

In Euclidean geometry, a translation is a geometric transformation that moves every point of a figure, shape or space by the same distance in a given direction. A translation can also be interpreted as the addition of a constant vector to every point, or as shifting the origin of the coordinate system. In a Euclidean space, any translation is an isometry.

<span class="mw-page-title-main">3D projection</span> Design technique

A 3D projection is a design technique used to display a three-dimensional (3D) object on a two-dimensional (2D) surface. These projections rely on visual perspective and aspect analysis to project a complex object for viewing capability on a simpler plane.

<span class="mw-page-title-main">Projection (linear algebra)</span> Idempotent linear transformation from a vector space to itself

In linear algebra and functional analysis, a projection is a linear transformation from a vector space to itself such that . That is, whenever is applied twice to any vector, it gives the same result as if it were applied once. It leaves its image unchanged. This definition of "projection" formalizes and generalizes the idea of graphical projection. One can also consider the effect of a projection on a geometrical object by examining the effect of the projection on points in the object.

In control engineering and system identification, a state-space representation is a mathematical model of a physical system specified as a set of input, output and variables related by first-order differential equations or difference equations. Such variables, called state variables, evolve over time in a way that depends on the values they have at any given instant and on the externally imposed values of input variables. Output variables’ values depend on the values of the state variables and may also depend on the values of the input variables.

In linear algebra, linear transformations can be represented by matrices. If is a linear transformation mapping to and is a column vector with entries, then

In linear algebra, a rotation matrix is a transformation matrix that is used to perform a rotation in Euclidean space. For example, using the convention below, the matrix

In mathematics, the kernel of a linear map, also known as the null space or nullspace, is the linear subspace of the domain of the map which is mapped to the zero vector. That is, given a linear map L : VW between two vector spaces V and W, the kernel of L is the vector space of all elements v of V such that L(v) = 0, where 0 denotes the zero vector in W, or more symbolically:

<span class="mw-page-title-main">Real coordinate space</span> Space formed by the n-tuples of real numbers

In mathematics, the real coordinate space or real coordinate n-space, of dimension n, denoted Rn or , is the set of all ordered n-tuples of real numbers, that is the set of all sequences of n real numbers, also known as coordinate vectors. Special cases are called the real lineR1, the real coordinate planeR2, and the real coordinate three-dimensional spaceR3. With component-wise addition and scalar multiplication, it is a real vector space.

In linear algebra, an augmented matrix is a matrix obtained by appending a -dimensional row vector , on the right, as a further column to a -dimensional matrix . This is usually done for the purpose of performing the same elementary row operations on the augmented matrix as is done on the original one when solving a system of linear equations by Gaussian elimination.

In the fields of computer vision and image analysis, the Harris affine region detector belongs to the category of feature detection. Feature detection is a preprocessing step of several algorithms that rely on identifying characteristic points or interest points so to make correspondences between images, recognize textures, categorize objects or build panoramas.

In the mathematical field of differential geometry, the affine geometry of curves is the study of curves in an affine space, and specifically the properties of such curves which are invariant under the special affine group

References

  1. "The Next Generation 1996 Lexicon A to Z: Mode 7". Next Generation . No. 15. Imagine Media. March 1996. p. 37.
  2. "Random: Discover How Mode 7 Works On Super NES, In Just 10 Minutes". Nintendo Life. 2022-03-15. Retrieved 2023-08-31.
  3. Super NES Player's Guide, Redmond WA, USA: Nintendo®, retrieved 2018-09-13
  4. "Axelay et le mode 7". upsilandre retrogaming (in French). Retrieved March 2, 2023.
  5. "Special Effects". Electronic Gaming Monthly . No. 67. Ziff Davis. February 1995. pp. 20, 26.
  6. 1 2 Dan Wood; Ravi Abbott (September 14, 2018). "The Atari Jaguar with Bill Rehbock – The Retro Hour EP139" (Podcast). The Retro Hour. Event occurs at 50m55s. Archived from the original on 2018-09-17. Retrieved 2018-09-17.