Appendix (Ver 1.1)
This covers some common and not so common arcade technical terms found on the site in the hardware descriptions, I thought it would be handy if I provided an explanation of them as some of these are pretty heavy going, but then some of it isn't simple stuff ;)
This is in alphabetical order and I've yet to quick link it, never mind, you'll just have to go through manually for now :)
The process of 3D graphics can be divided into three-stages: tessellation, geometry, and rendering. In the tessellation stage, a described model of an object is created, and the object is then converted to a set of polygons. The geometry stage includes transformation, lighting, and setup. The rendering stage, which is critical for 3D image quality, creates a two dimensional display from the polygons created in the geometry stage.
Alpha Blending / Transparency
Each pixel has three channels of colour information--red, green, and blue--and sometimes a fourth called the alpha channel. This channel controls the way in which other graphics information is displayed, such as levels of transparency or opacity. Alpha blending is the name for this type of control, and it's used to simulate effects such as placing a piece of glass in front of an object so that the object is completely visible behind the glass, un-viewable, or any value in between.
An advanced filtering method that gives the same advantages as trilinear filtering without losing any quality when seen from any angle.
For an example, if you are staring directly at a wall perfectly flat in front of you, you are seeing things properly filtered using bilinear or trilinear filtering. However, if you are looking at something on an angle, for instance the ground, the sampling from bilinear or trilinear still samples as if you were staring at a flat wall directly in front of you meaning the lines become blurred. If the ground is at an angle on your screen, anisotropic filtering filters the graphics based on that angle. It works on the space the object occupies in the 3D scene. This is very computationally expensive.
A method to remove the jagged edges of objects. It takes an the edges of a polygon and blurs them along its length to give the impression of a perfectly straight line, makes a massive difference at low resolution, making the polygons look as though they are at a far higher res than they are.
Bilinear filtering, or Image Smoothing
A technique used to smooth the ‘blocky’ appearance of textures when viewed close-up. For example, textures in flight simulators typically look best when viewed from about 5000 feet. This means that when viewed from ground level, all you see are the individual pixels that make up the texture. Filtering, or smoothing is used to blend neighboring pixels so that they don’t have a distinct edge; instead they look blurry.
The coloured textures are added to the haze and lighting to make the final scene and the pixel is written to the frame buffer. In some 3D engines, the rasterization process can now loop back to step a if a second set of effects is needed.
A shading technique using multiple textures and lighting effects to simulate wrinkled or bumped surfaces. Bump mapping is useful because it gives a 3D surface the appearance of roughness and other surface detail, such as dimples on a golf ball, without increasing the geometric complexity. Some common types of bump mapping are Emboss Bump Mapping, Dot3 Bump Mapping, Environment Mapped Bump Mapping (EMBM) and True, Reflective Bump Mapping.
Independent scrolling of every vertical line of pixels (vertical line scroll).
Depth cueing is the lowering of intensity as objects move away from the viewpoint.
See Frame Buffer...
Encryption (in the arcade pcb context)
Reversible transformation of some of the code of a game to make it impossible to use by someone who doesn't know how the transformation operates. Used to prevent unauthorized copies of the pcb, since the copiers don't know how to reproduce the decryption device
There are two kinds of environment mapping:
An object is made to reflect its surroundings, based on the actual textural scene the object is placed in. This method involves quite complex operations.
An object is made to reflect an arbitrary image by mathematically placing the object inside a cube or sphere where the inside surface of the cube/sphere is covered with the image to be reflected. The calculations are simpler in this case.
The speed at which the hardware can render pixels-usually measured in millions of pixels per second (Megapixels/sec).
The flat shading method is also called constant shading. For rendering, it assigns a uniform colour throughout an entire polygon. This shading results in the lowest quality, an object surface with a faceted appearance and a visible underlying geometry that looks 'blocky'. (Sega Model 1 and Namco System 21)
Fog and Haze
A light blue colour is calculated for each pixel (the intensity depending on where it is in the z-buffer) to simulate fog and haze.
Frame buffer (Double Buffering/Triple Buffering)
The memory used to store the pictures you see on screen. You can have 2 of them working at the same time, the front buffer is being displayed while the back buffer is being drawn. When the back buffer is complete it becomes the new front buffer and the old front buffer is cleared and the next frame is drawn there. Usually the swap has to wait for the next screen refresh to prevent the scene from changing midway down the screen. This wait is not visible, but it can cause a drop in frame rate. Some hardware allows an option for triple buffering with the advantage that the timing of the buffer swaps will coincide with the monitor refresh timing with no loss of performance
Graphics Processing Unit (GPU)
A high-performance 3D processor that integrates the entire 3D pipeline (transformation, lighting, setup, and rendering). A GPU offloads all 3D calculations from the CPU, freeing the CPU for other functions such as physics and artificial intelligence.
Gouraud Shading / Colour Interpolation
Gouraud shading, or colour interpolation, is a process by which colour information is interpolated across the face of the polygon to determine the colours at each pixel. It assigns colour to every pixel within each polygon based on linear interpolation from the polygon's vertices. This method improves the 'blocky' (see Flat Shading) look and provides an appearance of plastic or metallic surfaces.
Interpolation is a mathematical way of regenerating missing or needed information. For example, an image needs to be scaled up by a factor of two, from 100 pixels to 200 pixels. The missing pixels are generated by interpolating between the two pixels that are on either side of the pixel that needs to be generated. After all of the 'missing' pixels have been interpolated, 200 pixels exist where only 100 existed before with a minimal drop in quality.
JAMMA / JAMMA+
The Japanese Amusement Machine Manufacturer's Association
A standard format of arcade game edge connectors and interfaces that enable machine owners to swap JAMMA-compatible circuit boards between JAMMA-compatible arcade machines to change the game that is played on them. This enables the same cabinet to be used for a variety of games, thus reducing costs to the arcade owner.
JAMMA+ is basically JAMMA but with extra connectors/connections for different things that aren't used by the JAMMA standard, mainly extra inputs like the extra buttons.
Screen full of pixels that is mixed with other layers to generate the final picture. Layers usually scroll as a whole and independently from the other layers, and allows effects like having the front decor move faster than the back one.
One of the tricks used to make a rendered image look more cinematic, seen as either rings of light that might come from reflections in a camera lens photographing the scene, or as a star-shaped glare around bright lights or flames.
Level of Detail (LOD)
A method for lowering the total number of polygons describing a scene. Say there is an object that is described by 500 polygons. Up close you want to see then all, but at a distance maybe 5 will suffice.
Line by Line Priority Mixing
System where which of the layers is in front can change every line
Line by Line Scrolling / Line Scroll
System where every horizontal line in a layer can be scrolled independently from the others
Line by Line Zoom / Line Zoom
System where every horizontal line can be zoomed independently in a layer.
Control data. Embedded information that gives instuctions on what a pixel is supposed to do.
A technique to improve graphics performance by generating and storing multiple versions of the original texture image, each with different levels of detail. The graphics processor chooses a different MIP map based on how large the object is on the screen, so that low-detail textures can be used on objects that contain only a few pixels and high-detail textures can be used on larger objects where the user will actually see the difference. This technique saves memory bandwidth and enhances performance.
The effect of one object in 3-D space blocking another object from view.
Printed Circuit Board, what arcade games come on, the board with all the components mounted on it, usually big and green and covered in black chips.
Pulse Code Modulation, a way of encoding and decoding sound digitally and very accurately.
Triangles which recede into the distance (like a road to the horizon) are recalculated to make them appear smaller as they recede.
Shorthand for "picture element." A pixel is the smallest element of a graphics display or the smallest element of a rendered image.
The Phong shading algorithm is best known for its ability to render precise, realistic specula highlights. During rendering, Phong shading achieves excellent realism by calculating the amount of light on the object at tiny points across the entire surface instead of at the vertices of the polygons. Each pixel representing the image is given its own colour based on the lighting model applied at that point. Phong shading requires much more computation for the hardware than Gouraud shading.
Point filtering is used as a texture filter to determine a pixels colour value from a texture when up close when the texture size itself wasn't detailed enough to fill the entire screen area covered by the texture. This filter simply used the adjacent texel which resulted in sub optimal pixelated images.
For example if you have a texture that is 128x128 pixels in size and you are running 1024x768 resolution that texture could be viewed so it would take up possibly 512x512 actual screen pixels. This would result in a lot of empty on screen pixels, or empty space, if nothing were done. Point filtering reuses a single texel (a pixel from the original texture in this case) and copies it to fill in the added space. This takes care of filling the "empty space", but still leaves heavy pixelization of textures
Polygons or Triangles
3D scenes are drawn using only triangles. This vastly simplifies the computer creation of a 3D world. Triangles are defined as three x,y,z co-ordinates. Good 3D hardware will put the polygons together without any seams or white pixels that flash where the triangles almost meet.
The order in which things appear on the screen, the graphic with the highest priority will be at the front, whilst the lowest priority will be behind it, say for example, a ship having a higher priority than the background, it would appear on top of it.
Any device or code designed to make copying the game difficult. As a side effect, tends to make emulation difficult (because anything you can emulate, you can reproduce). Encryption is a form of protection.
Random Access Memory, literally the computers short term memory.
Acronym for Random Access Memory Digital to Analog Converter. A RAMDAC is a functional unit of a graphics processor that converts the digital data stored in the frame buffer into analog data that can be sent directly to an analog monitor.
A raster image is a matrix of row and column data points (dots) whose values represent energy being reflected or emitted from the object being viewed. These values, or pixels, can be viewed on a display monitor as a black and white or color image.
Special effects made by manipulating rasters (row scroll, column scroll etc...)
Resolution refers to the number of pixels in the whole image, because the number of dots per inch varies depending on the screen's dimensions. For example, a resolution of 320 by 240 means that 320 lines are drawn from the top to the bottom of the screen, and each of these lines is made up of 240 separate pixels--and in turn, each dot may have any number of combinations of red, green, and blue intensities.
The process of creating life-like images on a screen using mathematical models and formulas to add shading, colour, and lamination to a 2D or 3D wireframe.
Road Generator / Layer
Very specialized circuit. Generates a graphic plane from a picture by selecting one or two lines for each screen line of the original picture and scrolling them horizontally in place. The picture is usually a road in perspective, hence the name road generator.
Read Only Memory. The standard arcade form of storing data on a PCB, a microchip that acts like a disk, but can only be read from, not written too.
Rotating the whole screen or sprite or tilemap around an axis.
linescroll where the independence is limited to blocks of lines, usually of 8 pixels high+ but others values are known to happen
Another word for Zooming.
Scan Line Interlace, is a method of having two cards do the work of one. Two Voodoo2 cards can be placed in your computer side-by-side and connected by a short computer cable. When this happens, one will process all the odd-numbered scan lines, and the other will process all the even-numbered scan lines, so performance goes up by about 50%, and the effective frame buffer is doubled. Texture memory, however, is duplicated in both cards. This is used in some of the later Atari 3DFX based hardware.
Having the reflective properties of a mirror. This means that any light will be reflected in mirror angle direction.
An animated image, a sprite is defined once and is then animated by commands that change its position or appearance.
Layer synthesized from all the sprites of the game.
Rotating a specific sprite through an axis.
The ability to zoom a specific sprite in and out of the screen.
The section of the graphics memory that stores the stencil data. Stencil data can be used to mask pixels for a variety of reasons, such as stippling patterns for lines, simple shadows and more.
Surface Colour Correction
The colour of the texture is blended with any coloured lighting and shading to determine the true appearance of that texture.
Decomposing a complex surface into a series of simple ones that approximate the complex surface. This approximation is called Tessellation, and the degree of Tessellation can be controlled so that a surface looks very smooth (with correspondingly slow frame rates), or it can look very Tessellated, where you can see the triangles that define it (with higher frame rates).
The smallest units of a texture map, similar to pixels being the smallest unit of a rendered image.
A picture rendered over polygons to create one section of the 3D world.
Texture Compression (S3TC etc.)
Texture compression reduces large textures to smaller size on-the-fly, and store in the graphics system using significantly less memory while maintaining the image quality of the original artwork.
Compressed textures now fit into the local graphics memory instead of having to move data to the system memory, and because of this levels with large texture maps can now be used without a performance hit.
Texture lookup and filtering
The textures that will be displayed on each triangle are calculated using MIP-mapping, and bilinear (and trilinear) filtering.
The process of applying a texture to the surface of 3D models to simulate walls, sky, etc. Texture mapping enables developers to add more realism to their models.
The tilemap is a system for storing a rectangular area of graphics using less memory than a complete picture, and also gives other useful features like collision detection (solid areas).
It allows you to take a picture and split it into blocks (tiles), these can then be put in a grid to make a level of any size, also the blocks can be given almost any properties, layered, and animated.
Tilemaps are a way of creating complex levels without a lot of data.
Transparency / Alpha Blending
See Alpha blending...
A better-quality version of bilinear filtering
Triple Buffering (See Frame Buffer)
A step beyond normal frame buffering, this uses an additional back buffer to process the next image, resulting in smoother animation. With triple buffering, the GPU can start rendering a third frame while the first frame is being displayed and the second frame is waiting to be displayed. Triple buffering helps to insure that the GPU is never idle because it is waiting for rendered frames to be sent to the monitor.
Used to describe graphics made of mathematical objects called vectors such as curves and lines. Since every object can be defined as an equation, vector graphics can be scaled or transformed (e.g. rotation) without loss of detail unlike bitmap images. Also you can easily modify an object or a group of objects without disturbing others.
A method to define lights more realistically, like a street lamp in the fog, or the glow of your landing lights just before you break out of the clouds on a night time approach. Volumetric fog is calculating how much fog there is between the point of view and a surface for each pixel, giving the fog an appearance of being 'thicker' in one spot than in another.
A part of off-screen memory that holds the distance from the viewpoint for each pixel, the Z-value. When objects are rendered into a 2D frame buffer, the rendering engine must remove hidden surfaces.
A process of removing hidden surfaces using the depth value stored in the Z-buffer. Before bringing in a new frame, the rendering engine clears the buffer, setting all Z-values to 'infinity'. When rendering objects, the engine assigns a Z-value to each pixel: the closer the pixel to the viewer, the smaller the Z value. When a new pixel is rendered, its depth is compared with the stored depth in the Z-buffer. The new pixel is written into the frame buffer only if its depth value is less than the stored one.
A process of removing hidden surfaces by sorting polygons in back-to-front order prior to rendering. Thus, when the polygons are rendered, the forward-most surfaces are rendered last. The rendering results are correct unless objects are close to or intersect each other. The advantage is not requiring memory for storing depth values. The disadvantage is the cost in more CPU cycles and limitations when objects penetrate each other.
Zooming, making any graphic larger or smaller, useful for when you are going "into" or "away from" the screen.
Many thanks to Olivier Galibert for helping with the long words.
Some 3D references taken from Anandtech, Nvidia, CNet and Trident.