G - N
G
- Gamma
The relationship between how bright each pixel is in a monitor screen and the intensity of the electron beam striking it is not linear - the brightness is actually a power factor of the intensity. In other words, the brightness of the pixels does not rise or fall in equal sized steps when changing the beam intensity. The value of the power is called the gamma.
To adjust for this, graphics adapters employ a "reverse" gamma correction to produce a linear relationship between the two variables. This is necessary because the output from a graphics adapter is linear too. The colour of the pixels will have been calculated with no reference to what the monitor does, so the actual colour output can seem darker or lighter than expected. By changing the reverse gamma correction, the issue can be solved.
Applications and drivers often permit some kind of an adjustment the reverse gamma value, although it should be noted that this is not in all applications - many "gamma" sliders just alter brightness.
- Gamma Correction
See Gamma. This is the process, usually done by either the device drivers or the application using the graphics adapter, of adjusting the gamma to correct for the beam intensity-brightness relationship in the monitor. It is often, but incorrectly, labelled as a brightness control.
- Gates
Short for logic gates. These are the components of electronic devices that perform the Boolean process, such as AND, OR and NOT. All gates are composed of at least one transistor, so a modern CPU consists of millions of logic gates.
- Geometry
A broad term that covers anything to do with vertices, polygons, meshes, triangles and the associated operations done on them in the 3D applications.
- Giga
This is the prefix that describes "one thousand million" of something, in SI units - for bits and bytes though, a giga is short for 1073741824 and not 1000000000 as the mathematics is base 2. However, the likes of the IEEE use the SI version regardless to avoid confusion; figures for bandwidth, for example, typically use the SI version as well. The symbol for a giga is a capital G.
- Gloss Mapping
A gloss texture map contains information about the reflectivity of an objects surface - some parts might be shiny, others may be dull. The process of gloss mapping involves several texture stages: firstly, a specular texture map is generated and then multiplied with the gloss map (correctly adjusting the overall highlights). This result is then added to the base texture map that has been adjusted for the diffuse lighting in the scene.
Gloss Mapping produces more realistic highlights than specular mapping or environment mapping as additional information about the object is used to modulate the final effect.
- Granularity
This is a term that is used in several areas of computing; generally though it refers to the smallest size that can be set or addressed. For example, the granularity of memory determines the smallest amount of data that can be addressed at any one time; the granularity of a clock chip determines the smallest interval through which the clock rate can be altered.
- Graphics
Pictures, images, symbols, shapes, lights, etc - they are all graphics more importantly, they are graphics that can be generated in real-time and displayed on a screen.
- Graphics Adapter
A device that generates graphics to be produced on a monitor. All adapters accelerate the functions used to generate 2D graphics and virtually all desktop adapters released today, accelerate the processes done to generate 3D graphics too. Sometimes called a display adapter for obvious reasons.
- Graphics Card
This is a plug-in card that connects to the motherboard via a PCI or AGP slot; the card contains the graphics adapter, RAM for the local memory and sockets for the required outputs.
- Gouraud Shading
See Shading. This light shading technique calculates the colour of each vertex in a polygon and then interpolates the colours for the rest of the pixels, using a gradient between the vertices. If the pixel format is a high depth, then the colour change will be smooth - the joins between polygons will therefore also appear smooth, helping to give a more "rounded" impression for the shape.
- GPU
This is a marketing term, used by NVIDIA and other companies, to describe a graphics adapter that hardware accelerates transform and lighting calculations, although it now includes hardware shaders too.
- GUI
Graphical User Interface. A term normally associated with operating systems but it can, in fact, be used to describe the visual interface of any program. A GUI lets the user control a program via the use of icons, buttons and pointers.
H
- HAL
Hardware Abstraction Layer. This is the code that produces the interface between the hardware and any software using it; for example, a graphics adapter, and an API.
- Hard disk
As its name suggests this is a circular material made from either a metal alloy or hardened glass. It is coated with a magnetic material that is composed of many particles which align themselves under the influence of a magnetic field.
Like an old vinyl record, a hard disk contains a single spiralling track that is composed of a long sequence of these particles. Digital data is stored by altering the direction in which these particles face; to read the data back, a device scans along the track and sensing the direction.
- Hardware
This is the term used to describe all the physical devices within a PC.
- HDR
High Dynamic Range. This is a lighting procedure designed to emulate the way that light levels in the real world vary over an enormous range. This is mostly achieved by the use of floating point textures and render targets (as well as using the appropriate lighting algorithm); integer formats do not offer the anywhere near the same range of values. Although visually better, the use of floating point formats can result in a large performance impact on some graphics adapters.
- Heatsink
This is a device that is used to conduct heat away from its source and "spread" the heat over a larger surface area. This will help to dissipate the energy faster, ensuring that the source of the heat is kept cooler.
- Hertz
Named after Heinrich Hertz (who discovered radio waves amongst other things), this term is used for the units of frequency. A value of 1 Hertz equals a frequency of once per second.
- High Order Surfaces (HOS)
Sometimes called higher order surfaces. The normal method of creating a surface in 3D scenes is to use a large array of vertices. The more detail required in the surface, then the larger the number of vertices in the array. It is obvious that this method has drawbacks; firstly, sending a larger array over the AGP bus can hamper performance and secondly, the CPU will be busy creating all those vertices.
One solution is to use a high order surface - the overall shape of the surface is described using a sequence of mathematical equations that use a small number of vertices (called control points) to alter the rest of the shape.
- HLSL
High Level Shading Language. A high level language used to generate vertex or pixel operations; it differs from the use of an assembly language in that the instructions (and therefore construction of a shader) are more intuitive or easier to follow. Direct3D 9 contains its own HLSL as well as assembly programming, stating that its high level language is C-like in terms of functions, expressions and data types.
- HSR
Hidden Surface Removal. This is a term used to describe a set of procedures used to remove vertices or entire faces from a surface that are not within the view of the camera (and therefore do not need to be rendered). An example of HSR is back face culling, although there are many sophisticated methods employed in modern graphics adapters.
- Hyper-Z
This is a trademark from ATI Technologies for the group of 3 processes used in some of their graphics adapters - they include a hierarchical and compressed z-buffer, plus a mechanism to clear the buffer quickly.
I
- IDE
Integrated Device Electronics. A hard drive interface system developed by a group of manufacturers whereby the controller system was integrated into the electronics for the rest of the drive; all of the components were within the hard drive unit removing the need to have a separate controller.
- IEC
International Electrotechnical Commission. Founded in 1906, the IEC helps to govern standards and policies amongst the development teams and companies in the fields of electronics and microcomputing. As an example, the IEC set the unit of frequency to be Hertz in 1930, something that is still used today to rate CPUs and the like!
- IEEE
Institute of Electrical and Electronic Engineers. An organisation that, via the use of committees and research, design many of the specifications and formats used within a modern PC. They can be as simple as a floating point number format or as complex as multi-device bus interface.
- Index
Although this term is used within various parts of the computing spectrum, its use is generally the same. An index is like a marker that points to a specific entry in a list. The market may simply be a position indicator or may contain more complex information about the entry.
- Index buffer
This is a portion of memory containing index data. This is essentially a table of pointers for a vertex buffer; it is used to increase the performance of vertex buffer accesses and the triangle-to-vertex ratio.
- Instruction
Another term for a command. Computers work by processing instructions! They can be simple, such as moving the contents of one register to another, or they can be complex, such as finding the sine of a value. Longer instructions invariably take more processing than shorter ones but hardware can be designed to be dedicated to handling out specialist instructions and nothing else.
- INT8, 12
A term sometimes used to describe an integer number format that is 8- or 12-bits in size.
- Integer
A whole number, e.g. 3, 16, or 5000. Integers are never fractions.
- Integrated graphics
A name used for a graphics adapter that is embedded into a motherboard chip, typically the Northbridge. Such devices cannot be upgraded and usually share system memory instead of having their own dedicated RAM. The name is often misused to describe a graphic adapter that is built into the motherboard itself and not another chip. See embedded graphics.
- Interconnects
As the name suggest, these are the components in an electronic device that connects one part to another. In a modern processor, most interconnects are made from aluminium but there is increased move to copper, as this offers better conductivity and therefore less energy loss.
- Interpolation
This is the process of using a mathematical formula to calculate all the values between two given pieces of data. For example, Gouraud shading can interpolate the colours of all the pixels in a triangle just from the colours of 3 vertices (the corners of the triangle). Modern 3D graphics would be a very slow process indeed, if interpolation algorithms did not exist!
- ISA
Industry Standard Architecture. An old peripheral interface, running at 8MHz (16-bits width), that was developed in the early 1980s. Despite its slow performance in comparison to the PCI bus, it took nearly two decades before the ISA bus disappeared from new desktop PCs.
- ISO
International Standards Organisation. This body directs how notations, specifications and processes are used throughout the world.
J
- JPEG
Joint Photographic Experts Group. This rather bizarre name is actually a type of lossy codec (although it does have a lossless codec mode), developed by the JPEG itself. It offers a range of compression levels, although higher levels cause more of the original data to be lost. JPEG is a fixed image codec
K
- Kernel
Kernel is the core of an operating system that manages the most basic operations, such as managing the processor load across applications and handling hardware-dependent functions.
- Kilo
This is the prefix that describes "one thousand" of something, in SI units - for bits and bytes though, a kilo is short for 1024 and not 1000 as the mathematics is base 2. However, the likes of the IEEE use the SI version regardless to avoid confusion; figures for bandwidth, for example, typically use the SI version as well. The symbol for a kilo is a small k.
L
- L1, L2, L3 cache
These are the different stages of cache found in a CPU. The idea behind cache is that it acts a form of storage which can be accessed far quicker than system memory. L1 (level 1) cache is typically small (less than 64kB for the most part) and is the primary store of data and instructions for the processor; L1 cache is always built into the processor to allow it to be as close to the core as possible.
L2 cache used to be separate SRAM chips, outside the core, but in modern processors this too is built into the chip. The advantage behind this is that embedded cache will run at the same speed as the processor and have a far superior interface. This secondary store of data and instructions is much larger than L1 cache (in the case of some server processors, it is as much as several megabytes in size); it too store data and instructions - some implementations store a copy of the L1 contents.
L3 cache is not common amongst desktop processors and where it has been used in the history of PCs, it has been implemented into the motherboard. Some server and workstations CPUs have their L3 cache outside of the die but still integrated into the CPU body.
- Latency
This is a measure of how long it takes something to happen within piece of hardware. For example, it might be the amount of clock cycles it takes for a voltage line to stabilise after being activated, or it might be a ratio of two process times against each other. A commonly known example would be the CAS Latency of a RAM chip.
- LCD
Liquid Crystal Display. This is a form of display that works by shining polarised light through a panel of liquid crystals. When a voltage is applied to the crystals, they twist and block out the light. An array of transistors and crystals can be used to produce a moving image.
LCDs have definite advantages over CRT displays - they require less operating power; they produce far less electromagnetic emissions; the units are lighter and narrower. However they also have clear disadvantages too - they must interpolate resolutions (other than the one that directly equals the number of pixels in the LCD); they are more expensive to manufacture; basic LCD displays often produce blurry moving images.
The past decade has seen a rapid growth in the number of LCD displays being used; as they become more common, prices will fall and the technology will improve quicker.
- Light Mapping
A light map is texture map that is used to create lighting effects on top of the base texture. Light mapping is the process of multiplying the base texture with the lightmap. It is a quick and simple way of generating realistic light effects but without the need for complex calculations; however, it is limited to static lighting.
- Light Types
In any 3D scene, there will be one or more sources of light, revealing the scene itself. There are several different light types, each one having its own specific uses and problems, but DirectX uses these four:
- Ambient: An ambient light source does not actually exist within the scene; it fills the view with the same intensity and colour in all directions.
- Directional: The source itself is an infinite distance away from the scene and therefore all the light rays travel in the same direction and in parallel. The Sun would be an example of a directional light source.
- Point: Such sources exist in a specific place within the scene and emit light in all directions. A light bulb would be an example of point source.
- Spotlight: This light type is similar to a point source but emits the rays into a cone shape, directed away from the source. The intensity of the light and colour also changes with the cone radius.
The type of light used has a direct impact on the speed of the vertex processing in the pipeline; whether the graphics adapter or the CPU performs the calculations, ambient virtually makes no impact. Most systems can cope with a couple of directional lights but the vertex throughput will always fall once you start using point sources and spotlights.
- Local Memory
This term is used to describe the storage provided by either the RAM onboard the graphics card/motherboard or the portion of the system memory dedicated for the graphics adapter. The contents of the local memory will include such things as the frame buffers, the texture buffer, the vertex buffer, etc.
- LOD
Level of Detail. The amount of detail a polygon model or texture map contains does not need to be constant; as objects move further into the distance the level of detail becomes less. Therefore, most applications include some system whereby models are described using less polygons - the range of models available can be stored in the local memory. Such processes are called geometry LOD.
Virtually all modern graphics adapters can automatically handle mipmap LOD, whereby lower resolution versions of texture maps are generated. Most applications will handle the process of choosing the right mipmap LOD to use in any given scene, but some graphics adapters permit the end-user to bias the adapter into selecting a different LOD - this is called mipmap LOD bias.
M
- Mega
This is the prefix that describes "one million" of something, in SI units - for bits and bytes though, a mega is short for 1048576 and not 1000000 as the mathematics is base 2. However, the likes of the IEEE use the SI version regardless to avoid confusion; figures for bandwidth, for example, typically use the SI version as well. The symbol for a mega is a capital M.
- Mesh
A collection of polygons that defines a specific object - such as a character model or a landscape.
- MFT
Master File Table. In many ways, a MFT is an upgraded version of a file allocation table (FAT). Instead of simply being a simple list of file addresses on a hard disc, the MFT contains the attributes of the file or directory itself. This information will include items such as name and address but also security details or permissions. If the file being tagged is small, the file data can actually be stored in the MFT entry, making the access of such data very fast.
- Micron
This is an abbreviation of the term "micrometre" - a millionth of a metre or 0.000001m. Most of the components within a modern processing chip are in the order of a fraction of a micron; for example, transistors can be anything between 0.25 and 0.13 microns. The symbol for a micron is µm.
- MIDI
Musical Instrument Digital Interface. This is a protocol that permits digital devices to communicate with each other, provided they both support MIDI. An example would be using an electronic keyboard to write music onto a PC.
- Milli
This is prefix used to describe a "thousandth" or 0.001 of something - for example, 2 milliseconds is 0.002 seconds. The symbol for milli is a small m - using the above example, it would be written as ms.
- Miniport Driver
A kernel-mode driver, specific to an individual device or piece of hardware that is linked to Windows 2000 / WDM (Windows Driver Model). An example of this would be the miniport driver you need for the AGP port.
- MIP
An acronym of the Latin phrase "multum in parvo", which means "much in little". Why this phrase? See mipmap!
- Mipmap
A mipmap is a lower resolution version of a texture map. Many mipmaps can be produced from the original texture map, as each one is one quarter of the size of the map before it - for example, a base texture map that is 512 x 512 pixels in size could produce 9 mipmaps in total, starting with 256 x 256 and finishing with a simple 1 x 1 dot.
Mipmaps are used to texture an object that does not need the original texture map, usually because the object is far from the camera and therefore less detail is needed. The process used to generate a mipmap is similar to filtering in that pixels are blended together to give the lower resolutions. Since a single texture map can spawn many little "new" maps, the Latin phrase "multum in parvo", or mip for short, is used to describe them.
- MMX
The marketing name for the set of extra instructions that Intel added to their original Pentium processor. MMX instructions make use of the FPU registers, preventing floating point operations to run at the same but offering increased performance with other instructions. MMX is supposed to stand for "Multimedia Extensions" but nobody is 100% sure about this!
- Modifier
A modifier is an adjuster that can alter how an instruction is carried out or what happens to a piece of data as it is transferred from the source to its destination. Modifiers are invariably simple in their nature - they range from altering simply multiplying an output value by four to clamping the range that texture coordinates can take.
- Modulate
Although the term generally means "to change or manipulate", it also has a specific meaning in pixel processing operations. The texture op modulate means that two texel values are multiplied together.
- Molex
Although many PC users associated this term with a type of connector, it is actually a form of plastic invented in the 1930s by the self-named company. However, an average PC enthusiast will be referring to a type of power connecting socket (consisting of a +12V, +5V and two ground lines) when mentioning the word molex.
- Motherboard
The motherboard, also sometimes referred to as the mainboard, is a collection of devices (together on one large circuit board) that control the flow of data and operating electricity for all the primary components in a PC - for example, the CPU, memory, graphics adapter and sound card.
Most people identify what motherboard they have by the two main processing chips in the boards - called the Northbridge and the Southbridge. The Northbridge handles all the data flows to and from the main memory, plus all the CPU transactions. The Southbridge handles the data for most of the ports (PCI, ISA, IDE, USB, etc) - the Northbridge handles the AGP port as it requires the best possible link to the main memory.
- Motion Blur
Contrary to popular belief, motion blur is not a "natural" effect - the blurred images produced by this are caused cameras and the limitations of them. The film inside a camera can only react so quickly, as can the shutter; movies cameras will take so many shots per second. Any movement beyond these limits produces a blurred image.
Graphics adapter do not suffer from such limitations and consequently, the images are much more clearly defined (within the abilities of the graphics processing) - this lack of "fuzziness" means that moving computer images can often appear "unnatural", even if they are photorealistic.
Computer generated motion blur, for the desktop market at least, is still nothing more than a "trick", as the current methods used results in performance loses that most people would not consider acceptable. The standard method of producing motion blur involves rendering several versions of the same frame but with the geometry of the object to be blurred shifted slightly in each successive frame. This results in a large in the memory usage and memory bandwidth.
- MP3
An abbreviation of MPEG Audio-Layer 3. This is a compression algorithm developed by the Fraunhofer Institute in Germany and later standardised by the MPEG (Motion Picture Experts Group) that permits audio files to be highly compressed and yet retain excellent levels of quality. The algorithm takes advantage of the fact that human hearing is not "perfect" and that certain frequencies or groups of sounds are far less audible than others; therefore if they are removed from the original source, the modified sample will sound virtually the same. Other compression tricks are used in the algorithm too.
- MPEG
Motion Picture Experts Group. A type of moving image codec, developed the MPEG itself.
- Multielement texture (MET)
A normal texture is classed as a single-element texture. This means that a pixel operation can only read or write to a single element of that texture. A multielement texture permits pixel operations, such as shader, to read and write to several elements of the texture at the same time. The current implementation of METs in D3D9 has many limitations though.
The advantage behind using them is that a graphics processor can use a multielement texture as a temporary store of pixel data for the next pass. A hardware device that does not support METs can only use the temporary registers within the processor to store such information; this sets a limit as to what instructions can be carried out in a single pass.
- Multimedia
A term used to describe a range of products that have some audio and/or visual basis; for example, encyclopaedia programs are labelled as being "multimedia".
- Multisampling
Multisampling is the way DirectX does full-scene anti-aliasing. Multiple samples (called subsamples) of rendered pixels are taken, and blended together before being output to the screen. Although this sounds similar to supersampling, the only pixels that are updated are the ones on the edges of visible polygons and not every pixel in the frame (which strictly speaking means that multisampling is not a method of FSAA). See Anti-aliasing.
- Multitexturing
This method of rendering a frame requires the graphics adapter to have the ability to apply more than one texture stage per pass - multitexturing is, in many ways, the opposite of multipass rendering.
For example, graphics processors that can multitexture 2 stages per pass will be able to apply 2 texture layers to a primitive and only load the geometry once. A chip that cannot multitexture must use multipass rendering instead and for each texture layer, the geometry must loaded afresh.
Although it will take several clock cycles to multitexture additional texture layers, it is still a much quicker method than multipass. The latest DirectX 9-compliant graphics adapters have multitexturing abilities far beyond those first offering the feature.
N
- Nano
This is the prefix to describe "one billionth" of something, or 0.000000001 - for example, the wavelength of the ultraviolet light used to etch silicon chips is a few hundred nanometres. The symbol for nano is a small n.
- Nearest-point Filtering
See Texture Filtering. This method of texture filtering chooses a texel from the texture map that is nearest in value to the one defined by the texture coordinate - the latter may be non-integer in value but the texel will always be a fixed integer. While this process is fast, it produces poor quality textures and therefore is rarely used in a modern 3D game.
- Netcode
This term refers to the application code that handles how data and instructions are passed from computer to computer during a multiplayer game, whether it's across a LAN or modem
- Normal
This term, an abbreviated form of normal vector, refers to a vector that is perpendicular to the surface that it is associated with. One can picture this as an arrow attached to a surface so that it is at a constant angle of 90°. A normal can be used to record which direction a surface is facing in relation to another object, such as a camera or light.
- Normalisation
This is a process whereby normal vectors are adjusted so that their direction remains the same but their norm is returned to an equal value (typically 1). One can think of the norm as being the length or size of the normal vector. The process can either be done via a sequence of mathematical instructions (eg. in a pixel shader) or via the use of a specially designed cube map; this environment texture map contains the normalised values for each vector of a given direction.
- Normal mapping
This is the more generalised method of dot 3 bump mapping; see bump mapping.
- Normal maps
These are special types of textures maps where the colour of a texel describes the x, y or z-coordinate of a normal vector. Normal maps can be generated in real time or created pre-made; a common way of doing the later is to generate a high polygon count model and then use an application to produce a lower count model with an associated normal map that can be used to give the effect of the higher model's detail (see bump mapping).
- Northbridge
This is the name for the chip in most desktop PC motherboards that handles the data transactions between the CPU, AGP device, Southbridge chip and the main system memory. The performance of the Northbridge chip will have a substantial impact on the power of the entire system.
- N-patches
The more common name for curved point-normal triangles. This is a form of HOS (high order surface) that involves the replacement of the standard triangle described by three vertices with a PN-triangle. The shape of the PN-triangle is controlled using a Bézier Patch, with the control points in the patch represented by the vertices in the standard triangle. The patch is sent to the graphics adapter (assuming that it supports N-patches) which then interpolates the shape of the sides of the triangle; the algorithm used produces extra vertices that are then used to tessellate the PN-triangle further.
N-patches can be computationally intensive (quadratic Bézier interpolations are not easy!) but they can result in greater polygon density without having to send large amounts of vertex data across the AGP or PCI bus.
- NPC
layer character. This is body, object or character in a game that is under the control of the computer.
- NTFS
New Technology File System. This filing system, first introduced in Windows NT, is a complex system of metadata stored in binary trees. This means that all of the data of a file or directory, such as its name, size, location, permissions, date of entry and so on, are stored as piece of data within a table (the MFT) that organises the data in such a way that it can be accessed quickly and tracked to ensure security and reliability. Although convoluted, NTFS is generally seen as being more preferable to FAT on a Windows-based PC.
- NURBS
Non-Uniform Rational B-Splines. This is a type of Basis spline curve that is common in professional 3D rendering applications, although no desktop graphics adapter offers hardware acceleration of them.
|
|