Thursday, March 26, 2009

Program-ictionary

This post is dedicated to my good friend over at Heart Like Jesus blog, who recently reminded me we don't all speak geek. For those of us who do, even seemingly-simple concepts can deteriorate in the absence of a common terminology. The table below takes a stab at defining some key phrases used on this blog.

PhraseDefinition
C++Currently the most common game programming language.
OOPObject Oriented Programming. This is a conceptual way of structuring code to represent objects in the real world (e.g. creating a Person class that has properties such as Name and Age).
DirectXMicrosoft's collection of APIs for multimedia development for Windows-based systems. A few specific APIs include Direct3D (for graphics), DirectShow (for presentations), and DirectSound (for audio).
Direct3DThe DirectX API for creating computer graphics.
APIApplication Programming Interface. An API simplifies work for programmers by providing them with a list of functions they can use to perform specific tasks in a program.
PixelShort for picture element, a pixel represents a single dot displayed on your computer monitor.
TexelShort for texture element, a texel represents a single dot displayed in a texture (image) file.
Texture MappingSee my post Texturing Fundamentals for a definition of textures. Texture mapping is the process of texturing.
PointA position in 2-dimensional space specified by a horizontal X value and a vertical Y value.
VertexA position in 3-dimensional space specified by a horizontal X value, a vertical Y value, and a depth Z value.
Direct3D VertexA vertex that may contain properties (such as color, texture coordinates, etc.) in addition to a position (x,y,z) value.
Vertex BufferA hardware-dependent structure, accessible via Direct3D, to hold a list of vertices.
RenderThe act of drawing content from a vertex buffer to the screen.
Object Geometry  Set of vertices that make up a 3D object.
GeometryMath stuff I learned freshman year in high school and wish I could remember better now. Very important for graphics development!
This list is by no means comprehensive, but it's a start. I'll try to make sure I define new concepts clearly and am always open to correction from wiser experts. It's been said that blog comments are often better than the original blog post, and I'm excited to see if that proves true on GDJ!

1 comment:

  1. Thanks for putting together "Program-ictionary" for the programming-challenged!

    Not that I can go out and start developing my own games, but now I know you aren't speaking in Arabic.

    Thank you friend!

    ReplyDelete