C - F
C
- C++
A popular programming language that evolved from the original C language (although it works quite differently). C++ is object-oriented, providing greater stability (less chances of corrupting data) and shorter development time; many of today's large applications are written using C++.
- Cache
Typically, this is a very small piece of memory, used to store temporary pieces of data, which can be accessed very quickly by a processing chip. In graphics adapters, there several little caches built into the main core that are used to store such things as vertices, primitives, pixels, texture values, etc.
- Cache hit/miss
When a processing chip start a memory read or write, they check the local cache first. If the required contents (data, addresses, instructions, etc) are to be found in the cache, then the process has been a cache hit. If the contents are not there, then the chip will need to search access other, usually slower, memory - this is then called a cache miss.
- Camera
In a 3D graphics, the camera is the viewpoint from where the scene is observed. Game players are often placed in the position of camera (e.g. "first person" shooters) but the camera may be played elsewhere, depending on what needs to be rendered - for example, the production of a dynamic cube map requires the camera to be moved into 6 different positions.
- Capacitance
This the measure of a device's ability to store charge, for a given amount of voltage. The greater the capacitance, the more charge that can be stored. See capacitor.
- Capacitor
An electronic component that stores charge when a voltage is applied across it. They are mainly used to filter or smooth voltage lines or signals in computers.
- CAS
Column Address Strobe. One half of the address signalling in DRAM memory chips. Some graphics adapters allow you to adjust the CAS Latency of the onboard RAM - this is a ratio between the length of time between activating the CAS to data appearing on the output line, and the length of the memory clock cycle. Smaller values of CAS latency can help to increase the performance of the RAM but at a possible cost to stability.
- CD-R
Compact Disc - Recordable. The specifications for this storage format were released by Sony/Philips in 1988 and offered home users the ability to write their own CD-ROMs. The discs contain a pre-made reflective track that has a layer of dye on top; when hit by a laser pulse of sufficient power, the dye melts away leaving an patch of exposed metal. The data stored on a CD-R is sensitive to light and such discs are not as robust as "proper" permanent CDs.
- CD-ROM
Compact Disc - Read Only Memory. The original CD format was developed and released by Sony/Philips in 1982; the disc comprises of bullet-proof plastic (polycarbonate) with a thin layer of aluminium, topped off with another layer of protective plastic. Embedded into the metal is a single track that spirals from the middle of the disc to the outer edge; along the length of the track there are pits of different lengths. A laser "reads" the pattern of the pits, converting this into a stream of digital data.
The medium was initially used to store music but it soon became obvious that this data could be anything and not just music. A standard CD-ROM stores about 650MB of data, although some manufacturers produce higher capacity discs. These work by having a tighter pitched track (ie. the spiral is more compact).
- CD-RW
Compact Disc - Rewritable. This CD media expands on the CD-R by permitting data to be written, erased and rewritten to the disc many times. It works by having a layer that changes state when heated, which in turn alters its reflectivity. The process of writing data is similar to that with a CD-R.
The laser power is increased in order to heat the layer but instead of melting away, the material changes state (typically by going from a crystalline state into a semi-random arrangement). This change alters the reflectivity of the layer enough to be detected. Erasing the data is a similar process except that the laser power is lower than for writing but it remains on for a long period of time; the layer is heated until it returns to its original state.
- Cell Shading
This is a rendering technique that goes against the usual trend of modern 3D graphics! Rather than look realistic, cell shaded graphics have a "cartoon-like" appearance; bold, chunky colours are used to texture the objects and they often have a thick black outline to make them stand out from the background. The process is surprisingly complex and intensive - primitives have to be rendered several times, in various modes, to produce the outlines and the simple looking colours require complicated routines to produce the correct "stepped" appearance.
- Cg
A programming language and set of tools, for generating graphics, developed by NVIDIA.
- Channel (Audio)
Audio channels are the "lines" that the sounds created by the audio adapter are transmitted. Devices that are capable of creating more than one channel of sound will typically be able to send different sounds down each channel.
Certain words are often used to describe the number of channels used by the device or sound:
- Mono: Only one channel of sound is created.
- Stereo: Two channels are used, which can be used to give the impression of space and movement.
- Surround: Four or more channels are used, allowing the listener to be "surrounded" by the music or action.
- Sub-woofer: This is a specific channel for very low frequency sounds, although the name used to describe is misleading.
All desktop audio adapters are at least 2 channel and many now support surround and sub-woofer channels.
- Channel (Graphics)
This term, when used in conjunction with graphics, usually refers to the red, green, blue, and alpha colour channels for a pixel. See 16-, 24- and 32-bit colour (pixel format).
- Chip
Also called microchip or silicon chip. Essentially, it is a tiny slice of a semiconducting material (usually silicon) that has "impurities" or doping added to it. This process and others with it, turn the chip into a series of electronic circuits, gates, and transistors. It is not overly clear as to who or when the term "silicon chip" was invented but it most likely stems from the invention of the integrated circuit, which began life as simple "chips of silicon".
- Chipset
A group of chips that handle one or more jobs together. For example, the motherboard chipset controls all the command and data flows around the system.
- Chorus
This is a sound effect that is used to add depth by giving the impression of several instruments playing the same thing together. It is achieved by delaying the original sound and then feeding back through again, mixing them together. The length of the delay is then varied using a regular pattern to produce the overall "chorus" effect.
- Clipping
This is the process that removes vertices or entire surfaces from the rendering pipeline are not within the volume defined by the camera's field of view (called the frustum). Clipping occurs last in the vertex processing stage of the pipeline, after transforms and lighting.
- Clipping Planes
Clipping planes are the sides of the 3D volume defined by the camera's field of view - think of it as a pyramid tipped onto its side. The most important of these planes are the front and back ones; the front (or near clip plane) is usually the area marked out by the frame itself (i.e. it has the same size as the screen), whereas the back (or far clip plane) defines the furthest visible object in the scene.
- Cluster
A group of hard disk sectors. In operating systems such as Windows 95 or ME that use a FAT system, the smallest unit of storage in the hard drive is a single cluster.
- CLUT
This is an acronym for Colour Look-Up Table. It does exactly what its name suggests - it is a data table used by applications or hardware to determine what colour value is associated with a certain code value. They are principally used today in compressed images (such as textures or web pictures) to reduce the number of bits required.
For example, one might have a 24-bit RGB image. With 8-bits for each colour channel, the total range of possible colours comes to 16,777,216 - the vast majority of which will not appear in the image. By using a CLUT, the file can be compressed to contain the pixels of the image, and a table of their colour values
- CMYK
Cyan Magenta Yellow Black. A colour format for images (based on the 4 ink colours used in press printing); note that this must be converted into RGB to be handled by computers
- Codec
A term for compressor/decompressor. This is essentially a program that will compress and decompress a piece of data. Widely used in sound and video, many full-size applications use proprietary codecs to produce their own file formats. An example of a common codec is MPEG.
- Colour compression
When used in reference to graphics cards, this term describes the process used to compress data that is written to the frame buffer or possibly any render target. Compressing colour data saves on memory bandwidth usage.
- Compiler
This is a program that converts language code (source code) into the basic machine code. For example, one could develop an application using C++ but use a complier such as Microsoft's Visual C++ to compile it into machine code.
- Compression
The process of taking a piece of data and changing the code such that the file size is smaller than the original. For the data to be used again, it must be decompressed. There are two basic types of compression: lossless and lossy. The former changes the code in such a way that when it is decompressed, there is no loss of the original data structure. Lossy compression will remove data and so the decompressed file will not be the same as the original.
- Contrast
This is the relationship between the intensity of a signal going into a monitor and the brightness of the onscreen image. Note that this is not the same as brightness, which makes the monitor screen brighter or darker. If you plot a graph of the signal intensity against the monitor brightness, it would normally be a straight line - contrast controls how steep that line is.
- Core
Another name for the main part of a silicon chip microprocessor.
- CPU
Central Processing Unit. This is a microprocessor that performs most of the instruction calculations required by the operating system and other software. CPUs are composed of several "units" altogether on the same die, such an ALU and a FPU, that work at very high speed.
- CPU Optimization
This is where a piece of software contains instruction code to make use of specific hardware features such as MMX, 3DNow! or SSE. Optimizations are often needed in order to maximize the performance of another piece of hardware, and they are typically found in CPU-intensive applications such as 3D games and DVD players.
- CRT
Cathode Ray Tube. The basic component of most computer monitors and television sets. It consists of an evacuated tube, with a metal plate at one end and a layer of material at the other, which emits light when struck by electrons. When the plate is heated, electrons are ejected from the surface - a large voltage is then applied across the tube, causing the particles to accelerate towards the fluorescent layer. Further electric plates and electromagnetic coils are used to focus, collimate and control the beams of electrons.
- Cubic Environment Mapping
See Environment Mapping. The environment map in this method consists of 6 different texture maps, acting together as if they were a cube with the scene in the middle of it. These maps can be created dynamically, by rendering the frame into a texture surface from 6 different camera angles, or the map can be pre-made and remain static.
- Culling
This is where vertices, primitives, or surfaces are removed from the rendering process on the basis that they are not visible from the camera's point of view. Culling can be performed by the graphics adapter (after vertex processing and before rasterisation) or it can be done by the software creating the graphics.
- Current
This is defined as the amount of charge flowing from one place to another in a given amount of time. See Charge.
- Curved Surfaces
A term that gets used to describe several things; for example, it is when round shapes are tessellated (more polygons are added) in geometry stage before rendering them. You can get a "curved surface" by the use of something like Gouraud shading to give the impression that the object is curved. Alternatively, they are (incorrectly) used to describe higher-order surfaces such as Béziers and B-splines.
- Cylinder
Most hard drives contain more than one platter or hard disc. A cylinder is a group of tracks, located in the same place on each platter - the tracks are stacked one above the other within the cylinder. The more cylinders that a hard drive has, the greater its storage capabilities are.
D
- DAC
An acronym for Digital-to-Analogue Converter. This is a device that reads digital values and then converts them into a varying, analogue voltage signal. Such mechanisms are to be found on sound cards (for the audio output) and graphics cards (for the output to the monitor). DACs are sometimes classified by the number of bits used for the conversion - more bits produces a more accurate representation of the signal.
- Daughterboard
A term used for a small card that is plugged into a larger one, offering additional functions. An example would be additional input/output sockets for a sound card.
- DDR-II
The next evolutionary step in DDR-SDRAM. Through signalling and memory controller refinements, DDR-II can potentially reach higher clock speeds than DDR-SDRAM. To reach the higher speeds, the memory controller fetches 4 lots of data at once so the memory chips themselves do not need to run as fast as they would in a DDR-SDRAM setup. See DDR-SDRAM.
- DDR-SDRAM
Double Data Rate Synchronous Dynamic RAM. DDR-SDRAM memory uses a data bus system to time data transfers on the rise and fall of the clock signal. This means for one "tick" of the main clock, two data transfers can take place - in theory, this doubles the bandwidth of the memory, but in reality, you cannot always have a transfer per clock tick.
- Deathmatch
A type of multiplayer game where opposing players have only one goal - eliminate each other!
- Decompression
The reverse process of compression. See compression.
- Deferred Rendering
This is a rendering method that sorts the primitives in a frame before they are processed by graphics adapter. All the polygon contents in the scene are sorted based on whether they are visible or not, and those that are not visible, are removed from the rest of the rendering process. Although this means time is spent organising the scene, the actual rendering is far more efficient as only the visible parts are processed. Deferred rendering requires hardware support by the graphics adapter to work.
- Delay
This is a sound effect that can be used to add depth and other features. In its simplest form, a signal is delayed for a fraction of second before it is mixed back again with the original signal. The length of the delay, ranging from a few milliseconds to over half a second, produces the effect required.
- Depth Value
This is a quantity given to a vertex that tells the graphics adapter where that vertex lies within the scene. Actually, there are two values: the z-value and a number that is equal to 1/w. The z-value is the position of the vertex along a general z-axis in the 3D space and the w-value is a perspective scaling factor. The depth information for a given pixel is stored in either a z-buffer or w-buffer, which is used as a checklist for other pixels being rendered, to see if they should be visible, or not.
- Depth Complexity
This is a measure of the number of objects within a 3D scene, as viewed along the z-axis only. For example, a scene consisting of a single wall and nothing else would have a depth complexity of 1 as there is nothing in front or behind the wall. However, a 3D game drawn in the usual way will have many objects overlapping each other, increasing the complexity - this can seriously hamper the performance unless some method is employed to prevent the non-visible objects being rendered.
- Depth Cueing
This is a technique used for changing the colour of a pixel as according to its closeness to the camera; light intensity drops quite rapidly with distance and so objects that are far from the viewer must be made darker.
- Die
Another term for the main part of a silicon chip.
- Die Size
This phrase is often used, incorrectly, to describe the smallest size that the transistors are in the chip. For example, it is common to read about a die size of 0.15 microns for a graphics chip - the term "die size" should really mean the length and width of the die itself.
- Diffuse Lighting
See Shading. An object that is being viewed with a directional light source will have pixels that appear brighter than others do (diffuse lighting) - a process called Gouraud shading calculates the light intensity per vertex with respect to the light source position and then interpolates ("works out") what he rest of the pixel intensities will be.
- DIMM
Dual Inline Memory Modules. This is a design for the small memory "cards" that slot into motherboards. The circuit board has the memory chips on one or both sides, but the wiring connectors are always on both sides of the module - hence the dual part of the name. DIMMs use a 64-bit data bus and therefore need many pins for signalling, grounding, etc - the standard amount for a SDRAM DIMM is 168 pins, and for a DDR-SDRAM DIMM it is 184 pins.
- DirectX
A collection of different APIs developed by Microsoft, to be used in Windows. DirectX permits "direct" (hence the name) access to the hardware, without the programmer specifically writing code for the product. The APIs cover graphics, sound, input controllers, networking, and multimedia. Most desktop PC components have DirectX support these days.
- Direct3D (D3D)
The real-time 3D graphics API in DirectX. Direct3D has become a standard supported by all new desktop PC graphics adapters and also by most games.
- Displacement Mapping
This is a kind of vertex-texture mapping where the values of the texture map do not alter the pixel colour, but change the position of the vertex instead. Unlike bump mapping, displacement mapping can produce a genuine "rough" surface. It is currently only implemented in a few desktop graphics adapters, which also use it in conjunction with tessellation (increases number of polygons), to produce highly detailed meshes.
- Dithering
Dithering is the process of intentionally mixing colours of adjacent pixels. It is usually needed for 8-bit colour, but also sometimes for 16-bit. It allows a limited colour set to approximate a broader range, by mixing groups of varying-colour pixels in a semi-random pattern. If dithering is not used, colour gradients like sky or sunset tend to show "banding" artifacts.
- DOF (Depth of Field)
This is a visual effect done to simulate the way that real-life cameras will focus on objects in the foreground; the view behind such things will always be out of focus or slightly "blurry". There are various ways that this can be done such as using an accumulation buffer or pixel shader routines, but it requires very powerful graphics adapters to do this in real-time and quickly.
- Dolby Digital
Another name for AC-3. This type of encoding analogue sound into a digital form is highly popular due to the small data footprint created and that it offers multi-channel support.
- Doppler Effect
Sound waves emitted from a source moving relative to the listener will appear to change in frequency - as it moves closer, the frequency rises and as it moves away, the pitch of the sound will drop. An audio API (and associated adapter) that supports this effect will be able to produce sounds from shifting objects more realistically.
- DOT3
This abbreviation comes from a vector mathematics formula, used to calculate a three-component dot product. It is typically employed to talk about dot product lighting or dot product bump mapping (in both cases a combination of a light vector and a vertex normal).
- Double Buffering
See Frame Buffer. This is a feature where a graphics adapter will use two frame buffers in the local memory; one gets used for rendering into and the other is read by the RAMDAC to be displayed on the monitor.
The graphics chip renders the frame into the "back" buffer and once complete, the buffer is swapped to the "front" one - this exchange will occur either when the frame is complete or, if vsync is enabled, when the monitor begins a vertical refresh. Double buffering is almost standard in 3D games today as it helps to produce a smooth frame rate.
- DRAM
Dynamic Random Access Memory. A type of memory that is probably the most common as there are many types: EDO DRAM, SDRAM, DDR-SDRAM, etc. The "dynamic" part means the contents of the data cells will disappear unless refreshed many times per second.
- Draw Distance
This refers to the distance from the camera at which the far clipping plane is set. The term "pop-up" is often used in conjunction with this as games that have too small a draw distance have the parts of the scene "popping" up out of nowhere. A longer draw distance, however, means the graphics adapter has more to render for each frame and so the performance will suffer.
- Driver(s)
A driver is the software that handles instructions and data between a piece of hardware and an operating system, API or application. The driver removes the need for a programmer to write different lots of code for every possible bit of hardware that may use the application. See API and operating system.
- DSP
Digital Signal Processor. A term used to describe a processing chip, typically an audio one that performs specific operations on a signal of some kind, or generates other signals by processing fixed pieces of data stored in memory.
- DTS
An acronym for Digital Theatre Systems. This is an audio encoding technique from Dolby that is similar to AC-3 but the overall file size is much larger. However, the sound quality is a little better. Unlike AC-3, which is a standard audio format for DVDs and the like, DTS requires additional hardware support. See AC-3.
- Duplex
This is a term used to describe the ability of an audio adapter to generate and record sound at the same time. Full Duplex means it can do both together, whereas half-duplex means playback or recording be performed at any one time. The same term is also used for many other types of communication devices, such as modems.
- DVD-R
Digital Versatile Disc (Recordable). This is a "record-once" version of the DVD+RW format appeared in 2002 from the development teams of many companies. The format can hold up to 4.7GB per side.
- DVD+R
Digital Versatile Disc (Recordable). This is a "record-once" DVD format first appeared in 1997 by Pioneer and, confusingly, has two versions: authoring and general. The latter is intended for home use so most PC stores will stock this type; the former is supposed to be for professionals - one difference is that it permits double-sided DVD-R discs. The current maximum storage is 4.7GB per side.
- DVD-RAM
Digital Versatile Disc (Random Access Memory). This is a rerecordable DVD format from Pioneer that permits up to 4.7GB per side. Using a different technology to other types of rewritable DVD formats, a DVD-RAM unit will only recognise a DVD-RAM disc - it will not be able to read a DVD-R disc, for example.
- DVD-ROM
The term DVD stands for Digital Versatile Disc, although it originally stood for Digital Video Disc. A DVD-ROM is essentially the same as a CD-ROM - the differences lie in the scale of the data storage medium. The track is much narrow and therefore a greater length can be spiralled around a disc the same size as a standard CD. This results in greater room for data but the associated recording and reading hardware needs to be more refined; for example, the laser operates at a higher frequency.
DVD-ROMs can be dual-sided (i.e. data stored on both sides of the disk) and composed of up to two layers per side, although most DVD-ROMs used for PCs tend to be single layered and single sided. Such discs have a capacity of 4.4GB (more than six times the amount for a CD-ROM); the maximum dual layered/sided discs hold up to 16GB of data.
- DVD+RW
Digital Versatile Disc (Rewritable). This is a rerecordable DVD format from Pioneer that permits up to 4.7GB per side. A modern DVD+RW unit will recognise all formats of DVD discs (apart from DVD-RAM) but it will only rerecord on a DVD+RW disc; they can usually record onto DVD-R discs but it is not always certain.
- DVD-RW
Digital Versatile Disc (Rewritable). This is a rerecordable DVD format from a group of developers that permits up to 4.7GB per side. A modern DVD-RW unit will recognise all formats of DVD discs (apart from DVD-RAM) but it will only rerecord on a DVD-RW disc; they can usually record onto DVD+R discs but it is not always certain.
- DXTn
DirectX Texture Compression (sometimes written as DXTCn). This is a technology used to compress and decompress texture maps, either in real-time or before rendering. The process belongs to a company called S3 (see S3TC), but Microsoft licensed it for use in DirectX 6.
There are 5 different levels of DXTC; the one being used is denoted by the "n". DTX1 is the simplest, allowing basic texture maps (i.e. 100% opaque or with just 1-bit alpha) to be compressed to a size up to 6 times smaller. DXT2 and DXT3 are the same as DXT1 but are used for texture maps with alpha channels greater than 1-bit - however, the transparency is not compressed so DXT2/3 can only make a map up to 4 times smaller. DXT4 and 5 are the same again but with alpha compression this time.
While this form of texture compression is fast and very popular (as it allows very high resolution texture maps to be used without too much performance loss), the process is "lossy" - this means that some of the original texture detail is lost in the compression and cannot be recovered when decompressing.
E
- EAX
Environmental Audio Extensions. This is the trademark name for Creative Technology's audio API for their own range of sound cards. Initially developed to offer a reverb effect for all sounds; it has expanded to cover a range of audio features such as occlusions, reflection, or obstruction.
- Echo
See Delay. This sound effect is produced by mixing a delayed signal with the original one - the length of the delay is such that it gives the impression that some distant object is reflected the sound back, e.g. a canyon wall.
- Edge Anti-aliasing
See Anti-aliasing. With this technique, the anti-aliasing is done by rendering a high resolution frame just containing the polygons of the scene (i.e. no textures). This frame is then sampled in the same manner as other anti-aliasing methods, with the results being blended with the following frame of the same scene (this time at the normal resolution and with textures).
The method gets its name because it only smoothes polygons edges, and does not anti-alias the textures. It can also be computationally expensive and difficult to determine which edges should be anti-aliased. It is for these reasons that full-scene anti-aliasing has been the preferred method for a while, although some manufacturers have chosen to implement similar anti-aliasing methods.
- EDO DRAM
Extended Data Out Dynamic RAM. Until SDRAM and SGRAM became cheap enough to implement with graphics adapters, EDO DRAM was the most commonly used. What made this type of DRAM special was the fact that the memory could be accessed while the previous transaction was still taking place. By today's standards, it is unbearably slow.
- EEPROM
Electrically Erasable Programmable ROM. This is type of memory can be programmed with data by using bursts of electric charge. Once done, the contents of the memory remain stable, even without power, until rewritten using another flash of charge. The BIOS chips in motherboards are a faster type of EEPROM.
- EIDE
Enhanced Integrated Drive Electronics. An improved version of the original ATA device interface, developed by Western Digital in the early-to-mid 1990s. EIDE extended the use of ATA by offering faster transfer rates, logical block addressing to overcome the 0.5GB drive limit and support for CD-ROMs and tape drives.
- Embedded graphics
A name given to a graphics adapter that is built into the motherboard, rather than being on a separate PCI or AGP card. Such devices cannot be upgraded and often share system memory, instead of having their own dedicated RAM. The name is sometimes misused to describe graphics adapters that are embedded into another chip on the motherboard, such as the Northbridge. See integrated graphics.
- Emissive Lighting
See Shading. This lighting model is to account for objects that emit their own light (e.g. the Sun or a torch). It is important to use the correct light type with this lighting process to ensure that the object is accurately modelled.
- Environmental Bump Mapping
See Bump Mapping. This is a texture mapping method that uses a height map and an environment map to produce very realistic looking images.
- Environment Mapping
This is a texture mapping process that is used to produce objects that are reflecting the scene or environment that they are in; for example, a metal pan would show the reflection of a kitchen. It works by having the application work out how the scene looks and render this as a texture map (although this does not have to be done all the time). The program then projects a line from the camera to the object and calculates how it reflects off - this new line is then used to calculate which part of the environment map is sampled and then applied to the object.
There are several types of environment mapping; two such popular methods are:
- Cubic: The environment map is composed of 6 texture maps together, forming a "cube" around the object. This process produces very realistic results but at a significant cost to the rendering performance.
- Spherical: This method uses a texture map that contains a circular image of the environment. Such a map is typically produced by taking a cubic environment map and "warping" it, so that the image is spherical.
As well as reflecting a scene, the texture maps can be used for highlights or refractions. Per-pixel environment mapping can be very demanding on the graphics adapter, but the results can also be highly realistic.
F
- FAT
File Allocation Table. A filing system used to keep track of files and hard drive clusters, used by the Window 9x series of operating systems. As its name suggests, the FAT is a look-up table of all the clusters on the hard drive, storing where on the disc each one lies and what file(s) is/are associated with each cluster.
Key to the use of the FAT is the cluster size - this figure is given by what type of FAT is being used. FAT 12 uses 12-bit clusters; FAT 16 has 16-bit clusters, and so on. Larger clusters permits larger hard drives to be used but the drawback with this is that files smaller than the cluster will waste hard drive space, and the larger the cluster, the greater the space wastage
- FIFO
First in, first out. A name used for a type of buffer that sequences data on a serial basis; in other words, the first block of data into the buffer is the first one to leave it. Such buffers can be found in between the vertex processing and pixel processing stages of a graphics processor. A FIFO buffer handles transactions by itself and so does not need instructions to do this from a program.
- Fill Rate
Fill Rate is usually a measure of how many textured pixels a graphics adapter can produce per second, giving a simple guide as to how "fast" the device is. Even so, the fill rate itself is dependent on what is being done to each pixel that is rendered - i.e. how many texture layers are applied and what level of texture filtering is used.
Most graphics chips today have several pipelines that run in parallel, processing a block of pixels from the same polygon. The actual fill rate depends many things:
- number of texture stages per pixel
- number of arithmetic operations done per pixel
- use of anti-aliasing
- use of texture filtering
- which buffer is being written to
- multipass or multitexture rendering
- pipeline architecture
- and so on
Fill rate is typically quoted in Mpixels/second, which refers to the number of pixels being written into the final frame buffer per second. Sometimes though, the figure is given in Mtexels/sec which refers to the number of texture pixels being processed per second.
- Flat Shading
See Shading. A process where every side of the polygon is filled with the same colour value, producing ambient lighting.
- Floating-point
A fractional or decimal point number, e.g. 3.14566.
- Floppy disk
A storage medium that is made from a disc of flexible plastic (the "floppy" part) covered with a magnetic material, laid out into a spiral track. The floppy disc is many decades old but the version used throughout the world today was developed by Sony in the early 1980s; what made it different from many of the others was the fact that the floppy disc was encased in a rigid plastic shell.
The standard floppy disk can hold 1.44MB of uncompressed data - an amazing amount 20 years ago but the format is considered slow, unreliable and far too small by today's standards. However, there are modern versions with 100x times more capacity but still at the same size as the original Sony model; these discs require a proprietary drive to use them though.
- Floppy drive
The device that reads and writes to floppy disk.
- FM Synthesis
This is an older method employed by audio adapters to generate sounds. It involves the processing chip generating a pure sine wave (a single pure note), called the carrier wave, and then combined with another sine wave called the modulator. The resultant waveform is the sound heard.
- Fog
This is a technique used to mimic the effects of fog or dense cloud, but it can also be used to simulate the effects of observing distant objects, in that the detail of an object becomes less apparent as they move further away.
In DirectX, there are 2 basic methods of applying fog:
- Vertex Fog: As the name suggests, this method of fogging involves performing the calculations on a per vertex basis and then interpolating them across the rest of the polygon. Vertex Fog is always performed during the transform/lighting stage in the pipeline - it is therefore possible for the calculations to be done by either the CPU or the graphics adapter (if it can do so). This allows the programmer to choose how the fog is then calculated and then implemented.
- Pixel Fog: This method is performed on a per pixel basis and is therefore slower than vertex fogging. As with vertex fogging, the programmer has plenty of control over the choice of calculation, as the values are computed on a device driver level.
In addition to the methods of apply the fog, there are various ways of actually calculating the fog factor - the value used in the blending process:
- Linear Fog Factor: the formula used for this method simply decreases the fog factor in a linear scale (i.e. even steps) with an increasing depth value for the vertex or pixel.
- Non-linear Fog Factor: exponential or squared exponential formulae give a more realistic relationship between the fog factor and depth.
- Radial Fog Factor: Sometimes called range-based as this method accurately judges the distance from the viewer to the vertex/pixel, rather than basing the calculations on a simple depth value.
The best results would be obtained by performing per pixel radial fog, although the cost to performance would probably not be outweighed by any visual quality gains over using vertex-based fogging.
- Fog Table
This is a table of pre-determined look-up values that is sometimes used when performing pixel fog in Direct3D. The values are used, along with the z-values of each pixel, in the blending procedure when the fog stage is reached in the rendering pipeline.
- FP16, 24, 32
Terms used to describe floating point value formats - the number refers to the size of the value in bits. Larger formats offer a greater amount of precision.
- FPS
A common term that means either frames per second or first-person shooter. The former is the rate at which 3D frames are rendered, the latter is a type of 3D game.
- FPU
Floating Point Unit. The FPU handles the non-integer calculations in a CPU - previously it was always called the math co-processor as it was a separate chip in the motherboard. Today, all CPUs have an FPU integrated into the rest of the chip.
A powerful or very fast FPU is vital for all 3D games, as they involve many floating-point calculations.
- Fragment
Although this term is more commonly used in OpenGL, it is the pool of data for a pixel in a frame that is covered by a primitive. The data will include values to describe the pixel's colour, alpha, and depth and so on. The pixel pipelines in a graphics card work on fragments, rather than pixels as such.
- Fragment AA
This is a form of anti-aliasing employed by Matrox in some of their products. Like multisample AA, the anti-aliasing is only performed on the edges of polygons; no texture detail is altered.
- Frags
A term from 3D FPS games that involve deathmatchs and such like. A frag is a "kill" and so the number of frags gained by a player refers to the number of kills they have made.
- Frame Rate
As the name suggests, this is how many complete frames the graphics adapter is rendering per second. Do note that this is not the same as how many frames appear on the monitor screen per second - that is called refresh rate and the two values may not be the same. Frame rate is usually abbreviated to fps, frames per second.
The frame rate depends on many things - raw abilities of the graphics adapter, work load from the application, overall performance of the rest of the PC, etc - but it is considering desirable for the frame rate to be as high as possible. However, many people will not notice a low rate (such as 15 fps) if the scene being viewed is not changing rapidly; large changes in frame rates are more obvious than a steady low rate too. A sudden drop from 60 fps to 25 fps in a rapidly changing scene will be far more apparent than a steady 15 fps in a static scene.
- Frame Buffer
A frame buffer is a portion of the local memory used to store a completely rendering frame. The number of data points within the buffer is equal to the number of pixels in the chosen resolution, although each data point actually contains 4 values - one for each pixel colour (red, green, and blue) and one alpha value (which is not displayed by the monitor).
Depending on what graphics API is used, the frame buffer can also be considered as consisting of several buffers together: colour, depth, stencil, etc. The colour buffers are the only visible ones (i.e. the front buffer), with the others containing values used in the rendering process. See Buffering.
- Fresnel Mapping
This is a type of texture mapping that uses a special texture that acts like an information table - it contains data on how the object's surface will reflect light given the angle at which the light strikes the surface. Some materials will look quite dull when viewed at a low angle but reflect more and more as the view becomes more "face-on".
Fresnel mapping can be quite intensive as it requires the texel values from the Fresnel map to be blended with texels from an environment map (which contains the reflected image off the object), before finally being blended with texels from the base texture map. The most realistic results are achieved on a per pixel basis, hence why Fresnel mapping is best done using pixel shaders.
- Frequency
The number of times that something happens per unit of time is known as the frequency of that event. When referring to anything computer related, frequency usually means the clock rate of a device or signal and this is how many times per second the device/signal changes state. The units of frequency are Hertz or Hz for short.
- Front Buffer
See Buffering. This is the portion of the local memory used to store a completely rendered frame; it earns the name in reference to the fact that the RAMDAC always reads the front buffer when displaying a frame.
- FSAA
Full Scene Anti-aliasing. This is a method of smoothing out jagged polygon edges and odd texturing effects in order to improve the quality of a rendered image. FSAA does not require any special support from the application using the graphics adapter; if the hardware is capable of doing it, then usually it can be switched on via the driver. See Anti-aliasing.
- FSB (Front Side Bus)
The original role of the FSB was to act as the data bus between the CPU
It has grown to be far more complex in today's motherboards. The FSB contains multiple signalling lines that are used to time various systems within the PC - the CPU still runs at a fixed multiple of the FSB's clock line but now the main memory does this too. The data transfers across a modern FSB occur at a higher rate than the clock speed, so additional timing signals are used to clock the transfers.
- FX12
A term sometimes used to describe an integer number format that is 12-bits in size. This format offers 10-bits of precision, with the FX referring to the fact that it is "fixed" in size, unlike floating point values.
|
|