Game Development Dictionary
|A section of a circle that is measured in degrees or radians.|
|Binary Space Partition Tree. This is a sorting method for sorting nonmoving polygons where polygons are either in front or behind the currently polygon. The resulting linked list gives you the proper sorting for all polygons on the screen.|
|SDK used orginaly in SGI workstations, currently the 3D render of choice by most developers.|
|Ensuring polygons are drawn in appropriate order. Popular methods are depth soring, Z-buffering, portals, and BSP trees. Often abbreviated VSD.|
Refers to a modification to Heidmann's original stenciled shadow volumes technique generally attributed to John Carmack, although others came up with the same modification at about the same time. Rather than incrementing and decrementing for the front and back faces (respectively) when the depth test passes, the method increments for back faces and decrements for front faces when the depth test fails. This prevents shadow volumes from being clipped by the near plan, but introduces the problem of them being clipped by the far plane.
You can find out more about the algorithm here.
|When viewing a texture up close the texture becomes very aliased and ugly (for an example, in Doom get as close to a wall as possible). Bilinear Interpolation is the process of smoothing out the texture so that it is blurred and looks more smoothed when viewed up close.|
|A highly specialized processor which is designed solely for working on graphics. * Usually adept at copying rectangular chunks of graphic data around from place to place. Since Operating Systems such as Windows, MacOS often deal with large rectangular chunks of stuff on a screen - such as, er, windows - a blitter has become a standard feature in today's graphics cards.|
|.BMP, a bitmap file format. Used as the standard file format for Windows, BMP files can display data through a number of different color depths, and is usually uncompressed. BMP format does include a Run-Length Encoding version for 8-bit files and does not support a 16-bit format.|
|An open-sourced 3D modeller released under the GPL. Blender was originally a commercial product, but was open-sourced when the parent company, Not a Number, folded. The Blender Foundation was formed by one of NaN's founders, with the intention of raising enough money to purchase the rights to make Blender open source, and met their goal within a matter of weeks. Blender is a powerful modeller, featuring built-in ray-trace renderer, NURBS curves and surfaces, Beziers curves and surfaces, powerful mesh modelling tools, meta-balls, skeletal animation and inverse kinematics, non-linear animation, sub-division surfaces, particle systems, etc... A Python interface allows for the creation of custom scripts for import/export, special effects, and so on. http://www.blender.org|
|The point of intersection of lines or the point opposite the base of a polygon or other object.|
A video buffer consists of a memory allocation for the information that is drawn to the screen. The first buffer is what is actually drawn to the screen, a second and third buffer are used to create a workspace to draw to that doesn't require synchronization to the vertical retrace of the monitor.
Double buffering gives the program a buffer to draw on that is not dependent on the retrace. The second buffer can be held in video memory and then "flipped" to change places with the primary buffer, which then is used as the second buffer until the next flip.
|A generic term for graphics, sounds, maps, levels, models, and any other resources. Generally assets are compiled into large files. The file formats may be designed for fast loading by matching in-memory formats, or tight compressions for handheld games, or designed to otherwise help in-game use. It is often useful to have an asset tool chain. The original models may be high-density models with R8G8B8A8 images. You may have a model striper and image compresser that reduces the model for LOD, and compresses the texture to a DXT compressed image. These assets may then go through further transformations, and end up in the large resource file.|
|The idea of colors blending or "bleeding" into their surroundings, creating a smooth and realistic effect.|
|Because the polygons facing away from the viewer are not seen, and the extra time spent drawing them would have no effect on the visual quality of the scene, these backfaces are almost always removed in some manner.|
|A drop out occures when a few polygons vanish because there are too many polygons being displayed on screen for the computer to handle.|
|Uses the four adjacent corners to interpolate the value of a pixel in a texture map. This decreases the jaggedness of a texture when it gets larger, but also takes more memory and gives it a blurred look.|
|A process of rendering polygons that gives them an illusion of depth.|
|An interface in which the user interacts with the game. There is output given to the user through the monitor and speakers, as well as input taken from the user through the keyboard, mouse, joystick and other devices. User Interface is commonly used to describe the layout of the screen and screen elements that the user must interact with. For instance, buttons or windows that the user must use to access different features or give commands in the game.|
|Antialiasing algorithm that extends the Bresenham-line by drawing additional (background-)blended pixels above and below each original pixel. What is considered "above" and "below" is decided by the direction of the plotting. Some implementations also blend the original pixels.|
|A form of a bounding box where the box is aligned to the axis therefore only two points in space are needed to define it. AABB's are much faster to use, and take up less memory, but are very limited in the sense that they can only be aligned to the axis.|
|The Clipping Pane is a barrier to determine the loading and display points of 3d models and textures. The farther away the clipping pane from the main object, the further you can "see", but comes at a heavy performance cost.|
|A 2D image rotated in 3D so that its normal follows the normal of the viewing direction. Another definition would be: A 2D image that is rendered on the same plane as the viewing camera in a 3D world.|
|A method of outputting sprites by only showing non-transparent colors, without any checking during run time. This is done by precompiling a bmp into a piece of code that contains a set of screen memory writes that only include non-trasparent colors.|
|Usually a rectangular block of information where data is stored by the picture to make an image. For instance, if you capture the screen the data you would have is a bitmap of the screen.|
|A scene graph is a tree where the nodes are objects in a scene arranged in some sort of hirearchy. These nodes may be actual physical objects, or simply 'abstract' objects. For example a transformation node would apply some form of transformation to any 3D objects that are below the transformation node in the scene graph. A scene graph can be used for many things, depending on the way you order the nodes in the graph. For example you could have an octree containing object to be rendered in a scene, this would be a limited form of scene graph. You could have a scene graph that contains an octree as well as an alternative way or organising the same data, e.g. by render state. So you could use your scene graph for culling unseen objects as well as ordering objects to be rendered by render state.|