• Create Account

# Graphics

Term Name Description

#### Bezier Surface

A curved surface created from a mesh of control points.

#### Bresenham's Algorithm

An algorithm to compute which cells in a grid should be drawn in order to display a line between any two cells in the grid. Used to draw arbitrary lines to the screen.

#### Backbuffer

A secondary surface where the current frame's graphics are stored before they are transferred to the primary display surface.

#### Vector

In 3D graphics, a set of numbers representing magnitude and direction.

#### Blending

When an image is drawn so that images drawn before it can still be seen. This is done through blending the source colors with the destination colors at different percentages.

Also called Transparency.

A technique which causes rendered objects to look as though they are hand-drawn, cartoon images.

#### Bounding Box

A box approximation of an object used for collision detection. An axis-aligned bounding box (AABB) is defined by the minimum and maximum 'x', 'y', and 'z' values. An oriented bounding box (OBB), however, generally gives a closer fit, because it is always aligned with the object.

#### VESA

Video Electronics Standards Association. An organization that sets standards for video and multimedia in PCs. They created the Super VGA (SVGA) standard and the VESA Local Bus.

#### Color Cycling

Normally used with Indexed Color, this is a method of changing the index information for an image so that the colors change in a way that makes it appear to animate or cycle colors.

#### Cross-Product

Cross Product (Vector Product)

The cross product is a little more tricky. The cross product between two vectors yields a third vector which is perpendicular to the first two.

For vectors A, B, and a resultant C :

A X B = C

Or in component form :

( A.x , A.y , A.z ) X ( B.x , B.y , B.z ) = ( A.y * B.z - A.z * B.y , A.z * B.x - A.x * B.z , A.x * B.y - A.y * B.x)

This is commonly utilized to compute something known as a surface normal. As by the cross product formula, a normal is simply a vector that is perpendicular to some plane. In graphics, this plane is usually a polygon of some type.

Please note that A X B <> B X A . Ordering is very important in cross products. What actually happens is that B X A will yield a vector which points in the opposite direction of A X B.

#### Z-Buffer

An array of numbers that store the proper point on an polygon and its distance from the camera. The array is usually comprised of all the pixels in a screen and only the closest points are stored and then drawn. This method eliminates the problem of overlapping objects.

#### HDR

Real world lighting contains a high range of luminance values. HDR, or High Dynamic Range lighting, is essentially a technique that exceeds the normal computer graphics color range of 0 to 255, allowing for more realistic lighting models.

#### Dot-Product

Dot Product (Scalar Product)

The dot product shouldn't cause you any trouble. It is simply a way to multiply vectors. Keep in mind that we would normally describe these vectors in unit vector notation.

Here is a typical representation of a dot product for vectors A and B:

A · B

Or we can describe the same equation in terms of vector components:

A · B = A.x * B.x + A.y * B.y + A.z * B.z

Using a Dot Product, we can obtain the angle between two vectors A and B as follows:

Cos q = (A · B) / (|A| · |B|)

q = arcCos ((A · B) / (|A| · |B|))

Okay, lets break down what just occurred above. What we are saying is that the cosine of theta is equal to the dot product of A and B divided by the product of A and B's magnitudes. The magnitude of a vector V is denoted by : |V|

One can calculate the magnitude of a vector simply by taking the square root of each term

in the vector squared. Ie.

|A| = sqrt (A.x * A.x + A.y * A.y + A.z * A.z)

#### Cube Mapping

An alternative to sphere mapping used in environment mapping, cube mapping gets a 'screenshot' looking in 6 different directions and arranges them in a rolled out cube. When applied, the object appears to reflect the environment around it. A 'cheap' alternative to raytracing reflections, cube mapping is fast enough for realtime.

#### Corona

The artifacts that appear around a bright light source. Often in circular or star like shapes.

#### Voxel

Volume pixel. These are basically another way of drawing 3D objects, instead of defining them as the polygons that make up the outside of an object, you define it as a number of points. Voxels can be the size of a pixel on the screen, or they can be large spheres, sprites or any graphical representation of a point.

#### Backface Removal

See Backface Culling.

#### Environment Mapping

An effect where an object reflects its surroundings, much like chrome.

#### Boolean Geometry

Named after mathematician George Boole Boolean geometry refers to combining multiple objects. Common operations include "unions" which combine two shapes and "difference" operations. Difference operations can be used to cut one shape out of another. 3d Studio Max and the game Red Faction for the Playstation II are good examples of how Boolean geometry can be used in practical applications.

#### CG

nVidia's (relatively) simple shader language. It's currently one of the most commonly used shader languages, and it supports OpenGL and Direct3D even on non-nVidia cards. Toolkit and information can be found at www.developer.nvidia.com

#### Interlacing

Because the electron guns that draw pictures on TV screens were initially too slow to draw the screen in one pass, the first lines at the top of the screen would be fading by the time the last lines were drawn, pictures on TVs were drawn using what is known as interlacing. First the odd lines down are drawn (line 1, 3, 5, etc.). Then the even lines are drawn (line 2, 4, 6, etc.). The image shown by one pass is known as a field, and the complete image drawn by two passes is known as a frame. Standard TV broadcasts run at 30 frames per second (fps). In an effort to boost hype for a product, sometimes ads or press releases would state that their game was "60 fields per second", instead of 30 fps. Most computer monitors are non-interlaced as well as many arcade screens.

#### DirectGraphics

Introduced in DirectX 8; DirectGraphics combines both Direct3D and DirectDraw. (DirectDraw was removed after DirectX 7)

#### Perlin Noise

A function, inveted by Ken Perlin, who invented it to generate textures for the movie Tron (1982). One of the first films to use computer graphics extensively, Tron has a distinctive visual style. He won a special Academy Award for Perlin noise in 1997. Perlin noise is widely used in computer graphics for effects like fire, smoke and clouds. It is also frequently used to generate textures when memory is extremely limited, such as in demos.

#### Parallax Occlusion Mapping

Employs per-pixel ray-tracing for dynamic lighting of surfaces in real-time on the GPU. The method uses a high precision algorithm for approximating view-dependent surface extrusion for a given height field to simulate motion parallax and perspective-correct depth. Additionally, the method allows generation of soft shadows in real-time for surface occlusions. Alternatively, POM can be coupled with well-known bump mapping algorithms such as normal mapping if physical accuracy can be sacrificed for greater computational efficiency.

#### Complete Binary Tree

A binary tree in which all leaf nodes are at level n or n-1, and all leaves at level n are towards the left.

PARTNERS