Direct3D is the main part of DirectX since it does everything
you see. Direct3D8 does not only 3D, but 2D! Since, 2D
surprisingly is harder than 3D, these tutorials on Direct3D will
on portray on 3D and not 2D unless stated so.
Now, the following is a huge list of terms you should know
before we proceed. They explain a lot. They ARE boring, but
please read it, since a lot of these terms are very important.
And of course, we will go more in depth in all the terms later.
All the pictures are from the Microsoft DirectX 8 for Visual
Basic SDK. Things that have quotes and no relation are also from
the SDK.
Direct3D object |
It is the object that does
all your Direct3D stuff. |
Direct3DDevice object |
"A Microsoft® Direct3D® device is
the rendering component of Direct3D. It encapsulates and
stores the rendering state. In addition, a Direct3D
device performs transformations and lighting operations
and rasterizes an image to a surface. Architecturally,
Direct3D devices contain a transformation module, a
lighting module, and a rasterizing module, as the
following illustration shows." In lamest terms,
it is the object that does all your rasterising
(drawing), transformation (move, rotate, scale) and the
lighting (lights!).
|
HAL device |
It's the device that is installed on
your computer. Basically, it's your video card. |
Reference device |
Basically, it's using sofware instead of
hardware to do all your calculations etc... Which means
two things. The bad thing is that it is slow. The good
thing is that it can do ANYTHING DirectX8 can do. |
Vertex |
A 3 dimensional point. (Plural :
Vertices) |
Index |
A reference to a vertex. (Plural :
Indices) |
Primitive |
A way of the Device to draw something
from a Vertex Array, Vertex Buffer, Indexed Vertex Array
or Indexed Buffer. |
Point List primitive |
Drawing 1 Point per vertex.
|
Line List primitive |
Drawing 1 Line per group of 2 vertices.
|
Line Strip primitive |
Drawing 1 Line throught all vertices.
|
Triangle List primitive |
Drawing 1 Triangle per group of 3
vertices.
|
Triangle Strip primitive |
Drawing first 1 Triangle from the 1st,
2nd and 3rd vertices. Then drawing
1 Triangle from the 2nd, 3rd and 4th
Points to make 1 Triangle. Drawing 3rd, 4th
and 5th Points to make 1 Triangle. ETC. . .
The result is a Strip.
|
Triangle Fan primitive |
Drawing 1st Point and n1th
and n2th Points to make 1 Triangle.
The result is a Fan.
|
Light |
A light. Lights go in conjunction with
materials. |
Material |
A Material that covers a primitive. A
light hits a material. |
Vertex Format |
A format of which primitives are drawn
by the Device. The Vertex Format is very important since
it actually tells the computer if the program is going to
be 2D or 3D and if DX is going to do the lighting for you
or not! |
Texture |
A Texture covers a primitive. It also
relates to the Material and Lights. |
Array |
An array is a collection of data. |
Vertex Array |
An array of vertices. |
Index Array |
An array of indices. |
Depth Buffer |
A depth buffer is a buffer which
controls the depth of objects. Without a depth buffer,
you would most likely see triangles behind other
triangles. |
Stencil Buffer |
A stencil buffer is a buffer which
controls which pixels on the screen are visible and which
pixels on the screen are blacked out. |
Vertex Buffer |
A vertex buffer is a buffer which
contains vertices. |
Index Buffer |
An index buffer is a buffer which
contains indices. |
Alpha, Red, Green and Blue |
The 4 components of a colour in DirectX8
(or in computers). Usually refered to as A R G B. The
alpha component is always different depending on the
situation. |
Alpha Blending |
A fancy expression for colour blending.
Now this is where the alpha component comes in handy. If
the alpha is 0, then the colour/triangle is transparent,
while if the alpha is 1, then the colour/triangle is not
transparent. If the alpha is 0.5, then logically, the
colour/triangle is semi-transparent. Now if you have the
alpha blending on different sources and destinations,
this will effect it too. |
Geometry Blending |
A fancy expression for triangle
blending. |
Bump Mapping |
An expression which means to have bumps
in triangles. |
Fog |
Like in the real world, there's fog. |
Tweening |
A fancy word that means to blend from
one thing to another (morphing). |
Matrix |
(Plural : Matrices). A matrix is
basically a thing that holds information. In complicating
and mathematical terms, I have no clue of explaining it.
There are three matrices used in Direct3D8. They are
World, View(Camera) and Perspective. (Described More
Later) |