Technical data

a lot out of the engine, but the in-game world is
very static; dynamic lighting is not possible, for
example. Another very popular DX7 game is
Counter-Strike.
Games such as Quake 3 (OpenGL), Unreal, and
even comparatively recent games such as Battlefield
1942 belong to this generation. Almost all effects in
these games are realized through simple textures.
Aside from transformation and lighting (T&L),
these cards are not programmable. In fact, not all
graphics processors of this generation even offer
T&L support; for example Intel’s integrated i865G
or ST Micro’s Kyro II.
DirectX 8 Class
Unreal Tournament
2003 uses a number of
DirectX 8 shader
effects. As a result, the
game’s graphics look
much better than that
of older games, and the
in-game world seems
more alive.
Graphics processors
truly began to become
programmable starting
with DirectX 8.There
are two capabilities that
need to be taken into
account here, namely
pixel and vertex
(=geometry) calcula-
tions through shaders.
DirectX 8 incorporated
several different pixel shader models (SMs), which
support varying levels of programmability (PS 1.0,
1.1 and 1.2 are part of DirectX 8, while PS 1.4 was
added in DirectX 8.1). At first, the complexity of
the shader programs was quite limited, but their
complexity has increased with the newer shader
models.There is only one vertex shader model that
is shared by both DirectX 8 and DirectX 8.1:
Vertex Shader 1.0.
Direct X 9 Class
FarCry can be considered the first game that makes
consistent use of shaders.Thanks to DirectX 9, the
surfaces look very realistic and react to changes in
lighting, throw believable shadows, and more.The
game’s environment seems very “alive.“
Microsoft’s current 3D API is DirectX 9, which
permits even more freedom in shader programming
than DirectX 8, and also allows for longer and
more complex shaders. It also introduces the float-
ing-point data model, which allows for detail calcu-
lations that are much more exact.
ATI and NVIDIA are the two companies that
dominate the consumer 3D market, and their cards
offer varying levels of precision.While ATI’s proces-
sors use 24-bit precision across the board,
NVIDIA’s cards also support 16-bit and 32-bit
floating point modes (as well as some other FF for-
mats).The rule of thumb here is simple: “the higher
the precision, the more complex the calculation.
Which data format is required depends greatly on
the effect that is to be created -- not every effect
requires the highest available precision.
DirectX 9 also incorporates several pixel shader
models. First there is the original SM 2.0, to which
the evolutionary SM 2.0a and 2.0b were later
4
Introduction to DirectX 8:
http://msdn.microsoft.com/library/en-
us/dndrive/html/directx112000.asp?
frame=true
Programmable Shaders for
DirectX 8:
http://msdn.microsoft.com/library/en-
us/dndrive/html/directx01152001.asp?f
rame=true
Introduction to DirectX 9:
h t t p : / / m s d n . m i c ro s o f t . c o m / m s d n m a g / i s s
u e s / 0 3 / 0 7 / D i r e c t X 9 0 / t o c . a s p ? f r a m e = t r u e
Shader Model 3.0:
h t t p : / / w w w . m i c r o s o f t . c o m / w h d c / w i n h e c /
p a rt n e r s / s h a d e r m o d e l 3 0 _ N V I D I A . m s p x
Microsoft DirectX Overview:
http://msdn.microsoft.com/library/