|
|
ID3DXBuffer interface, manually inserting into a shader declaration, 212
ideal diffuse reflection, 41
IDirect3D interface, calling
GetDeviceCaps(), 115
if blocks, placing inside if-endif or loop-endloop blocks, 225
if-else-endif block
providing an alternate path of execution for, 217
start of, 225-226
if-endif block
else instruction must be inside of, 217
termination point for, 217-218
if instruction, 225-226
ifc-endif block, termination point for, 217-218
illuminated surface, 13
illumination, physically based, 58-74
illumination source. See lights
immediate constants, 198
incident light, hitting a surface, 58
incident light energy, relating with outgoing light energy, 76-77
index of refraction, 60
data for, 70
as a function of the wavelength of the light, 62
infinite light, Lambertian diffuse lighting with, 157-158, 159
inner product. See dot product
input registers, 197-199
computing the absolute value of, 205
declaration statement required in, 211
mapping vertex elements to, 210-211
for pixel shaders, 282-285
removing the integer part of, 224-225, 302-303
shifting the range of, 357
input streams, determining the maximum number, 127
input vertex
one-to-one correspondence with an output vertex, 92
transforming to clip space, 97
input vertex registers (vn), 197, 198-199
input vertex streams
mapping with input vertex shader registers, 199
specifying the location of, 101
instruction label
making a function call to, 208-209
making an unconditional function call to, 207-208
instruction label ID, 207
instruction modifiers, 367-369
instruction pairing, 369-371
instructions
add instruction, 206, 288-289
bem (bump environment map) instruction, 290-291
call instruction, 207-208, 226-227
callnz instruction, 208-209, 226-227
case sensitivity of, 193
cmp (compare) instruction, 292-293
cnd (conditional) instruction, 293-294
dcl (declare) instruction, 210-211, 296
def (define) instruction, 136, 198, 211-212, 284, 297
defb instruction, 213
defi instruction, 212-213
dp2add instruction, 291, 297-298
dp3 (dot product 3) instruction, 214, 298-299, 371
dp4 (dot product 4) instruction, 215, 300-301
dst instruction, 216
else instruction, 217
endif instruction, 217-218
endloop instruction, 218-219, 234
endrep instruction, 219-220
exp instruction, 301-302
expp instruction, 220, 221-223
frc (fractional) instruction, 302-303
if instruction, 225-226
label instruction, 226-227
lit instruction, 173, 227-229
log instruction, 303-304
logp instruction, 230, 231-234
loop instruction, 234-236, 258
mad (multiply and add) instruction, 173, 246-247, 312, 313
max instruction, 247-248
maximum allowed in vertex shaders, 204
min instruction, 248-249
mov instruction, 250-251, 315-316
mova instruction, 251-252
mul instruction, 253, 316-317
nop (no operation) instruction, 254, 317
order of appearance in a pixel shader, 274
phase instruction, 274, 275, 319-320
for pixel shaders, 273
ps instruction, 321-322
rcp (reciprocal) instruction, 256-257, 322-323
rep instruction, 234, 258-259
ret instruction, 207, 259
rsq (reciprocal square root) instruction, 260-261, 323-324
sge instruction, 261-262
slt instruction, 265-266
sub instruction, 266-267, 326, 327
tex instruction, 326-327
tex3x3pad instruction, using texm3x3 with, 346
texbem instruction, 328-329
texbeml instruction, 329-330
texcoord instruction, 203-204, 330-331, 332
texcrd instruction, 203-204, 285, 332-333
texdepth instruction, 333-334
texdp3 instruction, 334-335
texdp3tex instruction, 336-337
texkill instruction, 337-338
texld instruction, 285, 338-340
texldb instruction, 340-341
texldp instruction, 341-342
texm3x2depth instruction, 343-344
texm3x2pad instruction, 343, 344-345, 345
texm3x2tex instruction, 345-346
texm3x3 instruction, 346-347, 348
texm3x3pad instruction, 347-348
texm3x3spec instruction, 284-285, 348, 348-350
texm3x3tex instruction, 350-351
texm3x3vspec instruction, 351-352
texreg2ar instruction, 352-353
texreg2gb instruction, 354-355
texreg2rgb instruction, 355-356
textdepth instruction, 286
types of in a pixel shader, 274
vs instruction, 267-268
integer array, setting for the DirectX 9 style vertex shader, 134-135
integer label, calling, 226
integer part of the input register, removing, 224-225, 302-303
intensity
of a particular color element, 23
scaling color values by, 28
inter-object reflectance term, simple lighting model's lack of, 40
interactive debugging capability, 140-141, 142
interactive tool, for experimenting with shader code, 139
internal temporary registers, 200-202
interpolated color value, in a texture register, 285
inverse scaling factor, transforming normals by, 104
inverse transpose model-view-projection matrix, transforming the normal of the vertex by, 150-151
invert modifier, 357
isotropic reflection, perfect, 39
isotropic transformation, 104
iterative vertex shaders, ability for, 202
|
|