|
|
_d2 (half) modifier, 368
D3D device, selecting, 114-115
D3D Shader Debugger, 141-142, 143
D3Dapp framework, ConfirmDevice() function, 116-117
D3DCAPS8.MaxPixelShaderValue, 110
D3DCAPS9.PixelShader1xMaxValue, 110
D3DCAPS.MaxStreams capabilities bit, 127
D3DCAPS.MaxStreamStride capabilities bit, 127
D3DCREATE_HARDWARE_VERTEXPROCESSING flag, 115
D3DCREATE_MIXED_VERTEXPROCESSING flag, 115
D3DCREATE_PUREDEVICE flag, 115
D3DCREATE_SOFTWARE_VERTEXPROCESSING flag, 115
D3DDEVTYPE_HAL setting, with CreateDevice(), 114
D3DDEVTYPE_REF setting, with CreateDevice(), 114
D3DDEVTYPE_SW setting, with CreateDevice(), 114
D3DLOCK_DISCARD flag, 126
D3DLOCK_NOOVERWRITE flag, 126
D3DRS_ALPHAREF state, 178
D3DRS_FOGENABLE parameter, 169
D3DSAMP_ELEMENTINDEX render state, 287
D3DSAMP_MAXMIPLEVEL flag, valid with texldb, 341
D3DSAMP_SRGBTEXTURE render state, 287
D3DTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE capability bit, 203
D3DTOP_ADDSIGNED texture operation, bias modifier and, 358
D3DTOP_ADDSIGNED2X texture operation, signed scaling modifier and, 359
D3DTOP_DOTPRODUCT3 blending operation, 184
D3DTOP_MODULATE, for DirectX, 166
D3DTOP_SELECTARG1 rendering setting, for DirectX, 165
D3DTSS_TEXCOORDINDEX texture stage state flag, 326, 331
D3DTTFF_PROJECTED flag
ignoring, 339
not selecting when using the programmable pipeline, 203
not valid for PS 2.0 using texldp, 342
D3DUSAGE_WRITEONLY flag, using for static data, 125
D3DVERTEXELEMENT9 structures, token as, in DirectX 9, 120
D3DXAssembleShader() helper function, 130-131, 212
_d4 (quarter) modifier, 280, 368
_d8 (eighth) modifier, 280, 368
darklights, 30
data, static, 125
dcl (declare) instruction, 210-211, 296
dcl statement
declaring register usage, 287
including in all vertex shaders, 196
debugging capability, interactive, 140-141, 142
decal, applying a texture as, 174
decal texture, 165
decal texture shader, 165-166
declaration statement
on all sampler, color input, and texture coordinate registers, 296
required on all input registers, 211
def (define) instruction, 211-212, 297
in pixel shaders, 136
setting pixel shader constant registers, 284
in vertex shaders 2.0, 198
def statements
locking constant registers, 198
in pixel shaders, 133
defb instruction, 213
defi instruction, 212-213
degenerate triangles, adding in, 125
density, as a function of temperature, 70
depth buffer, attached to the MRT surface, 288
depth value
calculating for a depth test, 333-334
resolution of, 99
destination masks, 268-269
destination register
adding two sources into, 206
independent of the read port count restrictions, 274
storing source registers into, 250-251
destination write masks, 363-367
determinant notation, for the cross product, 18
device capabilities bits, querying, 116
device memory, copying data into, 125
diamond-air interface, 61
dielectrics, 36
Fresnel equations for, 65-70
diffuse and specular colors, setting both, 109
diffuse and specular lighting coefficients, computing, 227-229
diffuse color, 34
diffuse light, 41-44
diffuse lighting, 34
changing for an object, 43
equation for calculating, 42
near uniform loss of, 54
traditional expression for, 157
diffuse reflection, Oren-Nayar, 54-58
diffuse term
generating for a local light shining on a vertex, 158
generating for an infinitely distant light shining on a vertex, 157
diffuse values, clamping to only positive, 42
diffuse vector component, FVF vertex shader register mapping order, 199
digital facial engraving, creating from 2D images, 82
digital halftoning, using to get range and material, 82
Direct3D and OpenGL pipeline. See FFP (fixed-function pipeline)
Direct3D flags, defining the format, 118-119
direction vectors, 13, 20-21
DirectX
SDK, 114
shader setup in, 113-137
unit cube in, 99
vertex shader declaration documentation, 119
view matrix as the equivalent of OpenGL's modelview, 99
DirectX 8
input vertex registers order using FVF format, 199
loading the vertex shader, 132
pixel shader math precision, 109-110
setting vertex shader constants, 133-134
vertex streams introduced by, 93
DirectX 8.0, version history, 193
DirectX 8.0a, version history, 196
DirectX 8.1, version history, 193
DirectX 9, 90
compliant pixel shader versions, 109
creating a shader, 131-132
D3D Shader Debugger shipped with, 141-142, 143
higher precision registers for pixel shaders, 279
integer and bool constants introduced in, 198
loading the vertex shader, 132-133
preparing the vertical pipeline for tessellation processing, 122
setting vertex shader constants, 134-135
significant changes introduced with the pixel shader 2.0, 273-274
DirectX 9.0
revision history of, 196
version history, 193
DirectX FFP, use of Blinn's equation for specular light, 49
dirt map. See scuff map
disk with this book, RenderMonkey SDK, 139
displayable range, colors exceeding, 27
distance vector, computing, 216
dithering, 82
division, notation for, 11
dot-3 bump mapping, 184-186
dot product, 15-17
calculating using the (r, g, b) texture data in the source and destination texture coordinate data (u, v, w), 334, 336
information available from, 16-17
macroinstructions expanding into calls, 106
notation for, 11
dot product 3. See three-component dot product
dot product instructions
performing a matrix multiply, 97
taking the transpose of the matrix, 100
dot product term, relating a cross product term to, 20
dp2add instruction, 291, 297-298
dp3 (dot product 3) instruction, 214, 298-299, 371
dp3-rsq-mul sequence, 151
dp4 (dot product 4) instruction, 215, 300-301
DrawPrimitive call, 137
driver bugs, checking for, 114
dst instruction, 216
_dw modifier, 362-363
mixing the .xyw modifier with, 339, 361
performing a perspective divide, 285, 333
DWORDS, tokens as in DirectX 8, 120
dwSilhouetteAmount render state, setting the silhouette edge threshold, 178
dynamic data, 125-126
dynamic vertex buffers, allocating, 125
_dz modifier, 340, 362-363
|
|