Index

Symbols

.3ds Files 111

Numerics

3D Object File Format 10

3D sound 4, 233

3D Studio 11-12, 83, 98, 111

A

accelerator keys 24

ActiveMovie 5

Adding a WAV Resource 216

AddRef 13

Advertising 349

affine transformation 77

alpha-blending 7

Ambient Light 8, 63

Animation 7, 242

animation callback 245

animation sequences 243

animationCallbackArgs 97

AnimationSet 110, 242, 244-245

AnyInstance 19, 23, 28

Application Window 32

atmospheric effects 7

audio-video interleaved 5

Autodesk 12

AutoPlay 5

AVI 5

AVI file 289

avirm 289

B

back-buffer 277, 316, 339

Begin 344

BeginIndexed 344

BeginPaint 31

BeginScene 339

BITMAPFILEHEADER 280-281

BITMAPINFOHEADER 281

bits-per-pixel 296

blitting 37

bounding box 202

Box Collision Object 202

BSP tree 203

build_plane 160

C

C++ 13

call IDirectDrawSurface::SetClipper 38

callback 78, 206

camera 48

CameraMove 203, 206

CameraMove Callback Function 206

Choosing Your DirectDraw Device 313

CleanUpSound 229

Clearing the Back Buffer 304

clip lists 37

Clipper 316

Clipper objects 37

CloseApp 309

Closed Templates 104

CloseServices 309

collision 202, 208

collision callback 203

Collision Detection 200

ColMinCon :: collision 208

ColMinLnk 204

ColMinObj 204

Color Depth 8, 43

color keying 279

Color Map 306

Color Model 38

COM 9, 12

commutative 76

Component Object Model 12

conv3ds 11

Cooperative Level 316

CreateDevice 40-41

CreateLight 79

CreateMatrix 331

CreateScene 46-47, 100, 152, 270, 327

CreateViewport 46

CreateWindow 29

CreateWindowEx 298

Creating our Scene 46

Creating our viewport 46

Cylinder Collision Member Function 210

Cylinder collision object 202

Cylindrical wrap 170

D

D3DCLEAR_TARGET 339

D3DCLEAR_ZBUFFER 339

D3DCOLOR_MONO 39

D3DCOLOR_RGB 39

D3DEXECUTEBUFFERDESC 328

D3DEXECUTEDATA 328

D3DFILL_SOLID 336

D3DLIGHTSTATE_AMBIENT 336

D3DLIGHTSTATE_MATERIAL 336

D3DLIGHTTYPE 63

D3DLVERTEX 326-327

D3DOP_EXIT 338

D3DOP_STATELIGHT 336

D3DOP_TRIANGLE 337

D3DPAL_READONLY 277

D3DPRIMCAPS structure 39

D3DPROCESSVERTICES_COPY 327

D3DPROCESSVERTICES_TRANSFORM 327

D3DPROCESSVERTICES_TRANSFORM-

LIGHT 327, 337

D3DRENDERSTATE_DITHERENABLE 336

D3DRENDERSTATE_FILLMODE 336

D3DRENDERSTATE_SHADEMODE 336

D3DRMBOX 201, 640, 647, 665

D3DRMCOLOR_FROMFACE 87

D3DRMCOLOR_FROMVERTEX 87

D3DRMCOLORMODEL 38

D3DRMCOLORSOURCE 87

D3DRMCOMBINE_AFTER 76-77

D3DRMCOMBINE_BEFORE 76-77

D3DRMCOMBINE_REPLACE 75, 77

D3DRMCOMBINETYPE 75, 154, 648

D3DRMFILLMODE 649

D3DRMFOGMODE 649

D3DRMIMAGE 90, 244, 641

D3DRMLOAD_FROMFILE 88

D3DRMLOAD_INSTANCEBYCOPYING 88

D3DRMLOAD_INSTANCEBYREFERENCE 88

D3DRMLOADMEMORY 642

D3DRMLOADOPTIONS 87, 247

D3DRMLOADRESOURCE 642

D3DRMLOADTEXTURECALLBACK 247

D3DRMMAPPING 169

D3DRMMATERIAL_FROMFRAME 86

D3DRMMATERIAL_FROMMESH 86

D3DRMMATERIAL_FROMPARENT 86

D3DRMMATERIALMODE 86

D3DRMMATRIX4D 77

D3DRMPALETTEENTRY 644

D3DRMPICKDESC 644

D3DRMQUATERNION 645

D3DRMRENDER_GOURAUD 118

D3DRMRENDER_UNLITFLAT 42

D3DRMRENDERQUALITY 118, 142

D3DRMVECTOR4D 645

D3DRMVectorAdd 146, 148, 207

D3DRMVectorCrossProduct 123

D3DRMVectorNormalize 146-147

D3DRMVectorScale 207

D3DRMVectorSubtract 156

D3DRMVERTEX 269, 645

D3DSHADE_GOURAUD 336

D3DTLVERTEX 326-327

D3DTRIANGLE 337

D3DVECTOR 122

D3DVERTEX 326-327

D3DVIEWPORT 321

D3MinCon 205-206

D3MinLnk 205

D3MinObj 204-206

DD_FULLSCREEN 295

DD_WINDOWED 295

DDBLT_COLORFILL 287

DDCAPS2_NO2DDURING3D-SCENE 340-341

DDCOLORKEY 279

DDPCAPS_8BIT 284, 306

ddsCaps 276

DDSCAPS_3DDEVICE 277

DDSCAPS_COMPLEX 277

DDSCAPS_FLIP 277

DDSCAPS_PRIMARYSURFACE 277

DDSCAPS_SYSTEMMEMORY 279

DDSCL_ALLOWMODEX 275

DDSCL_EXCLUSIVE 301

DDSCL_FULLSCREEN 301

DDSCL_NORMAL 300, 302

DDSD_BACKBUFFERCOUNT 276

DDSD_CAPS 276, 301

DDSURFACEDESC 276-278, 280, 301

dead zone 190, 196

debugging 292, 293

DefWindowProc 31

depth range 257

digital joysticks 187

Direct3D 5-6, 9, 294

Direct3D errors 26

Direct3D File Format 11

Direct3DExecuteBuffer 333

Direct3DMaterial 329

Direct3DRMAnimation 242

Direct3DRMCreate 36

Direct3DRMTexture 45

Direct3DVewport 330

DirectDraw 4, 292, 294, 300

DirectDraw Clipper Object 36

DirectDraw palette 278

DirectDraw Surface 165

DirectDraw_Close 309

DirectDraw_Init 300

DirectDrawClipper 37

DirectDrawCreate 275, 300, 313-314

DirectDrawCreateClipper 37-38

DirectDrawEnumCallback 312

DirectDrawSurface 277

DirectInput 5, 186

Directional Light 8, 63

DirectPlay 5

DirectSound 213, 217

DirectSound Buffer 218-219

DirectSound buffer 226

DirectSoundBuffer 227

DirectSoundCreate 218

DirectSoundEnumerate 217, 219

DirectX 3-5, 9

DirectX 3 download 4

DirectX 5 4

DirectX file format 11, 83, 102

DirectX File Format Comments 103

DirectX File Format Header 103, 108

DirectX File Format Templates 104

DispatchMessage 19, 25, 309

Dithering 7

Doppler effect 236

Doppler shift 236, 238

Draw Engine 346

DrawIndexedPrimitive 344

DrawPrimitive 344-346

DSBCAPS_CNTRL3D 237

DSBCAPS_CTRLDEFAULT 225

DSBCAPS_CTRLFREQUENCY 225

DSBCAPS_CTRLPAN 225

DSBCAPS_CTRLVOLUME 225

DSBPLAY_LOOPING 226

DSBUFFERDESC 218, 220

DSPPLAY_LOOPING 230

DSSCL_NORMAL 218-219

dwBackBufferCount 276-277

dwColorSpaceHighValue 279

dwColorSpaceLowValue 279

dwFlags 278

dwShadeCaps 39

dwSize 278

dwZBufferBitDepth 278

E

End 344

EndPaint 31

EndScene 339

Enumerating drivers 40

enumeration callback 314

enumeration of the DirectDraw devices 312

Error Handler 26

event handler 121

Example DirectX File 108

Execute buffers 325, 327

exponential fog 256

exponential squared fog 256

F

field 153

field of view 48, 50

Filling the execute buffer 333

FindResource 220

first parameter 14

FirstInstance 19, 23, 27

Flat Shading 39

Flat Wrap 170

fog 7, 256

foreshortening 49

forward declarations 21

frame 46

Frame Motion 78

frame of reference 46

Frame Transformations 75

Front Buffer 316

front clipping plane 50

front vector 234

Frustum 48

full screen 18, 273-274

full-screen mode 292

function 13

G

GetBox 201

GetJoystickCoords 196

GetMessage 309

getNormal 85

GetPickable 130

GetStatus 344

GetStockObject 28

GetTransform 344

global state changes 335

globally unique identifiers 19

Gouraud Shading 39

GroundCheck 155

GUID 20, 300

H

HAL 3, 10, 37

hardware abstraction layer 3

hardware emulation layer 4

hat switch 199

HEL 4, 10, 219

I

IDirectDrawSurface2::SetPalette 308

IDirect3D::CreateMaterial 331

IDirect3D::CreateViewport 321

IDirect3D::CreateLight 328

IDirect3D::CreateMaterial 329

IDirect3D::CreateViewport 330

IDirect3D::EnumDevices 314

IDirect3DDevice 321

IDirect3DDevice::AddViewport 330

IDirect3DDevice::BeginScene 339

IDirect3DDevice::CreateExecuteBuffer 332

IDirect3DDevice::EndScene 339

IDirect3DDevice::Execute 339

IDirect3DExecuteBuffer::SetExecuteData 333

IDirect3DLight 328

IDirect3Dlight::SetLight 328

IDirect3DListener::GetPosition 239

IDirect3DListener::SetPosition 239

IDirect3DMaterial::SetMaterial 329

IDirect3DMaterial::SetSpecular 329

IDirect3DRM::CreateViewport 47

IDirect3DRM:: CreateShadow 250

IDirect3DRM::AddSearchPath 358, 386, 395, 401, 419, 435, 484, 498, 504, 529, 562, 572, 576, 580, 599, 603-615, 617-628, 630, 635

IDirect3DRM::CreateAnimationSet 92-93, 359

IDirect3DRM::CreateDevice 360

IDirect3DRM::CreateDeviceFromClipper 41

IDirect3DRM::CreateDeviceFromD3D 361

IDirect3DRM::CreateDeviceFromSurface 362

IDirect3DRM::CreateFace 363

IDirect3DRM::CreateFrame 46, 364

IDirect3DRM::CreateLight 364

IDirect3DRM::CreateLightRGB 366

IDirect3DRM::CreateMaterial 167, 367

IDirect3DRM::CreateMesh 139, 168, 367

IDirect3DRM::CreateMeshBuilder 85, 368

IDirect3DRM::CreateObject 368

IDirect3DRM::CreateShadow 369

IDirect3DRM::CreateTexture 90, 166, 244, 370

IDirect3DRM::CreateTextureFromSurface 166, 371

IDirect3DRM::CreateUserVisual 372

IDirect3DRM::CreateViewport 373

IDirect3DRM::CreateWrap 169, 374

IDirect3DRM::EnumerateObjects 375

IDirect3DRM::GetDevices 376

IDirect3DRM::GetNamedObject 376

IDirect3DRM::GetSearchPath 377

IDirect3DRM::Load 87, 378

IDirect3DRM::LoadTexture 90, 100, 166, 244, 379

IDirect3DRM::LoadTextureFromResource 380

IDirect3DRM::SetDefaultTextureColors 381

IDirect3DRM::SetDefaultTextureShades 382

IDirect3DRM::SetSearchPath 383

IDirect3DRM::Tick 77-78, 126, 384

IDirect3DRMAnimation 243

IDirect3DRMAnimation::AddRotateKey 387

IDirect3DRMAnimation::AddScaleKey 388

IDirect3DRMAnimation::GetOptions 390

IDirect3DRMAnimation::SetFrame 391

IDirect3DRMAnimation::SetOptions 392

IDirect3DRMAnimation::SetTime 392

IDirect3DRMAnimationSet 242-243

IDirect3DRMAnimationSet::DeleteAnimation 396, 401-409, 411-416, 419-432, 436, 484, 498, 504, 529, 562, 572, 576, 580, 599, 603-615, 617-628, 630, 635

IDirect3DRMAnimationSet::Load 87, 246, 397

IDirect3DRMAnimationSet::SetTime 247, 398

IDirect3DRMDevice::DeleteUpdateCallback 401, 419-432, 436, 484, 498, 504, 529, 562, 572, 576, 580, 599, 603-615, 617-628, 630, 635

IDirect3DRMDevice::GetBufferCount 402

IDirect3DRMDevice::GetColorModel 403

IDirect3DRMDevice::GetDirect3DDevice 403

IDirect3DRMDevice::GetHeight 405

IDirect3DRMDevice::GetQuality 406

IDirect3DRMDevice::GetShades 407

IDirect3DRMDevice::GetTextureQuality 407

IDirect3DRMDevice::GetTrianglesDrawn 405

IDirect3DRMDevice::GetViewports 408

IDirect3DRMDevice::GetWidth 408

IDirect3DRMDevice::GetWireframe-Options 409

IDirect3DRMDevice::Init 409

IDirect3DRMDevice::InitFromClipper 410

IDirect3DRMDevice::InitFromD3D 411

IDirect3DRMDevice::SetBufferCount 411

IDirect3DRMDevice::SetDither 412

IDirect3DRMDevice::SetQuality 413

IDirect3DRMDevice::SetShades 414

IDirect3DRMDevice::SetTextureQuality 415

IDirect3DRMDevice::Update 416

IDirect3DRMesh::SetGroupColor 85

IDirect3DRMesh::SetGroupColorRGB 85

IDirect3DRMesh::SetGroupMaterial 85

IDirect3DRMesh::SetGroupTexture 85

IDirect3DRMeshBuilder::AddFace 85

IDirect3DRMeshBuilder::AddFaces 85

IDirect3DRMeshBuilder::AddVertex 85

IDirect3DRMFace::AddVertexAndNormal-Indexed 419, 436, 484, 498, 504, 529, 562, 572, 576, 580, 599, 603-615, 617-628, 630, 635

IDirect3DRMFace::GetColor 420

IDirect3DRMFace::GetMaterial 420

IDirect3DRMFace::GetNormal 421

IDirect3DRMFace::GetTexture 422

IDirect3DRMFace::GetTextureCoordinate-Index 423

IDirect3DRMFace::GetTextureCoordinates 423

IDirect3DRMFace::GetTextureTopology 424

IDirect3DRMFace::GetVertex 425

IDirect3DRMFace::GetVertexCount 425

IDirect3DRMFace::GetVertexIndex 426

IDirect3DRMFace::GetVertices 427

IDirect3DRMFace::SetColor 86, 427

IDirect3DRMFace::SetColorRGB 86, 428

IDirect3DRMFace::SetMaterial 429

IDirect3DRMFace::SetTexture 429

IDirect3DRMFace::SetTextureCoordinates 430

IDirect3DRMFace::SetTextureTopology 431

IDirect3DRMFrame::AddVisual 88

IDirect3DRMFrame::AddLight 436, 485, 498, 504, 529, 562, 572, 576, 580, 599, 603-615, 617-628, 630, 635

IDirect3DRMFrame::AddMoveCallback 79, 155, 203, 438

IDirect3DRMFrame::AddRotation 75, 153, 439

IDirect3DRMFrame::AddScale 75-76, 440

IDirect3DRMFrame::AddTransform 75-76, 441

IDirect3DRMFrame::AddTranslation 75, 77, 442

IDirect3DRMFrame::AddVisual 157-158, 442

IDirect3DRMFrame::DeleteChild 443

IDirect3DRMFrame::DeleteLight 444

IDirect3DRMFrame::DeleteMoveCallback 79, 445

IDirect3DRMFrame::DeleteVisual 157, 446

IDirect3DRMFrame::GetChildren 157, 447

IDirect3DRMFrame::GetColor 447

IDirect3DRMFrame::GetLights 448

IDirect3DRMFrame::GetMaterialMode 449

IDirect3DRMFrame::GetOrientation 449

IDirect3DRMFrame::GetParent 450

IDirect3DRMFrame::GetPosition 451

IDirect3DRMFrame::GetRotation 77, 452

IDirect3DRMFrame::GetScene 453

IDirect3DRMFrame::GetSceneBackground 453

IDirect3DRMFrame::GetSceneBackground-Depth 454

IDirect3DRMFrame::GetSceneFogColor 455

IDirect3DRMFrame::GetSceneFogEnable 455

IDirect3DRMFrame::GetSceneFogMode 456

IDirect3DRMFrame::GetSceneFogParams 456

IDirect3DRMFrame::GetSortMode 457

IDirect3DRMFrame::GetTexture 458

IDirect3DRMFrame::GetTextureTopology 458

IDirect3DRMFrame::GetTransform 77, 459

IDirect3DRMFrame::GetVelocity 460

IDirect3DRMFrame::GetVisuals 460

IDirect3DRMFrame::GetZbufferMode 461

IDirect3DRMFrame::InverseTransform 78, 156, 462

IDirect3DRMFrame::Load 87, 99, 463

IDirect3DRMFrame::LookAt 464

IDirect3DRMFrame::Move 77-78, 465

IDirect3DRMFrame::SetColor 86, 466

IDirect3DRMFrame::SetColorRGB 86, 466

IDirect3DRMFrame::SetMaterialMode 467

IDirect3DRMFrame::SetOrientation 468

IDirect3DRMFrame::SetPosition 154, 469

IDirect3DRMFrame::SetRotation 77-78, 126, 470

IDirect3DRMFrame::SetSceneBackground 470

IDirect3DRMFrame::SetSceneBackground-Depth 471

IDirect3DRMFrame::SetSceneBackground-Image 472

IDirect3DRMFrame::SetSceneBack-groundRGB 473

IDirect3DRMFrame::SetSceneFogColor 473

IDirect3DRMFrame::SetSceneFogEnable 474

IDirect3DRMFrame::SetSceneFogMode 475

IDirect3DRMFrame::SetSceneFogParams 475

IDirect3DRMFrame::SetSortMode 476

IDirect3DRMFrame::SetTexture 477

IDirect3DRMFrame::SetTextureTopology 478

IDirect3DRMFrame::SetVelocity 78, 478

IDirect3DRMFrame::SetZbufferMode 480

IDirect3DRMFrame::Transform 481

IDirect3DRMFrameArray 131

IDIRECT3DRMFRAMEARRAY::Get-Element 130

IDirect3DRMLight::GetConstantAttenuation 485, 499-500, 502, 507, 509-517, 519, 521-522, 526, 561

IDirect3DRMLight::GetEnableFrame 486

IDirect3DRMLight::GetLinearAttenuation 486

IDirect3DRMLight::GetPenumbra 487

IDirect3DRMLight::GetQuadraticAttenua-tion 488

IDirect3DRMLight::GetRange 488

IDirect3DRMLight::GetType 489

IDirect3DRMLight::GetUmbra 489

IDirect3DRMLight::SetColor 490

IDirect3DRMLight::SetColorRGB 328, 491

IDirect3DRMLight::SetConstantAttenu-ation 491

IDirect3DRMLight::SetEnableFrame 492

IDirect3DRMLight::SetLinearAttenuation 493

IDirect3DRMLight::SetPenumbra 493

IDirect3DRMLight::SetQuadraticAttenu-ation 494

IDirect3DRMLight::SetRange 495

IDirect3DRMLight::SetType 495

IDirect3DRMLight::SetUmbra 496

IDirect3DRMMaterial 167, 329

IDirect3DRMMaterial::GetPower 499, 507, 509-517, 519, 521-522, 526, 561

IDirect3DRMMaterial::GetSpecular 500

IDirect3DRMMaterial::SetEmissive 500

IDirect3DRMMesh 84, 138

IDirect3DRMMesh::AddGroup 269

IDirect3DRMMesh::GetBox 507, 561

IDirect3DRMMesh::GetGroup 508

IDirect3DRMMesh::GetGroupColor 509

IDirect3DRMMesh::GetGroupCount 510

IDirect3DRMMesh::GetGroupMapping 511

IDirect3DRMMesh::GetGroupMaterial 511

IDirect3DRMMesh::GetGroupQuality 512

IDirect3DRMMesh::GetGroupTexture 513-514

IDirect3DRMMesh::GetVertices 514

IDirect3DRMMesh::Scale 516

IDirect3DRMMesh::SetColor 86

IDirect3DRMMesh::SetColorRGB 86

IDirect3DRMMesh::SetGroupColor 516

IDirect3DRMMesh::SetGroupColorRGB 517

IDirect3DRMMesh::SetGroupMapping 519

IDirect3DRMMesh::SetGroupMaterial 520

IDirect3DRMMesh::SetGroupQuality 85

IDirect3DRMMesh::SetGroupTexture 523

IDirect3DRMMesh::SetVertices 269

IDirect3DRMMesh::Translate 526

IDirect3DRMMeshBuilder 84, 139

IDirect3DRMMeshBuilder ::AddMesh 140

IDirect3DRMMeshBuilder::AddFace 140

IDirect3DRMMeshBuilder::AddFaces 140, 530, 570

IDirect3DRMMeshBuilder::AddFrame 95, 141, 531

IDirect3DRMMeshBuilder::AddMesh 532

IDirect3DRMMeshBuilder::AddMesh-Builder 532

IDirect3DRMMeshBuilder::AddNormal 533

IDirect3DRMMeshBuilder::AddScale 96

IDirect3DRMMeshBuilder::AddVertex 534

IDirect3DRMMeshBuilder::CreateFace 534

IDirect3DRMMeshBuilder::CreateMesh 140, 535

IDirect3DRMMeshBuilder::GenerateNormals 85, 145, 536

IDirect3DRMMeshBuilder::GetBox 537

IDirect3DRMMeshBuilder::GetColorSource 538

IDirect3DRMMeshBuilder::GetFaceCount 539

IDirect3DRMMeshBuilder::GetFaces 539

IDirect3DRMMeshBuilder::GetPerspective 540

IDirect3DRMMeshBuilder::GetQuality 541

IDirect3DRMMeshBuilder::GetTexture-Coordinates 542

IDirect3DRMMeshBuilder::GetVertexColor 542

IDirect3DRMMeshBuilder::GetVertexCount 543

IDirect3DRMMeshBuilder::GetVertices 544

IDirect3DRMMeshBuilder::Load 87, 545

IDirect3DRMMeshbuilder::Load 90

IDirect3DRMMeshBuilder::ReserveSpace 546

IDirect3DRMMeshBuilder::Save 547

IDirect3DRMMeshBuilder::Scale 549

IDirect3DRMMeshBuilder::SetColor 550

IDirect3DRMMeshbuilder::SetColor 86

IDirect3DRMMeshBuilder::SetColorRGB 86, 550

IDirect3DRMMeshBuilder::SetColor-Source 87, 551

IDirect3DRMMeshBuilder::SetMaterial 552

IDirect3DRMMeshBuilder::SetNormal 553

IDirect3DRMMeshBuilder::SetPerspective 554

IDirect3DRMMeshBuilder::SetQuality 142, 554

IDirect3DRMMeshBuilder::SetTexture-Coordinates 556

IDirect3DRMMeshBuilder::SetTexture-Topology 557

IDirect3DRMMeshBuilder::SetVertex 558

IDirect3DRMMeshBuilder::SetVertex-Color 559

IDirect3DRMMeshBuilder::SetVertex-ColorRGB 560

IDirect3DRMMeshBuilder::Translate 561

IDirect3DRMObject::AddDestroyCallback 563, 572, 576, 580, 599, 603-615, 617-628, 630, 635

IDirect3DRMObject::Clone 564, 573, 575

IDirect3DRMObject::DeleteDestroy-Callback 565

IDirect3DRMObject::GetAppData 566

IDirect3DRMObject::GetClassName 567

IDirect3DRMObject::GetName 567

IDirect3DRMObject::SetAppData 568

IDirect3DRMObject::SetName 569

IDirect3DRMPickedArray::GetPick 129

IDirect3DRMPickedArray::GetSize 574

IDirect3DRMTexture 164

IDirect3DRMTexture::GetColors 582, 603, 605-606, 608-609, 612, 615, 617-618, 620-623, 628-629, 633, 639

IDirect3DRMTexture::GetDecalOrigin 582

IDirect3DRMTexture::GetDecalScale 583-584

IDirect3DRMTexture::GetDecalSize 584

IDirect3DRMTexture::GetDecalTrans-parency 585

IDirect3DRMTexture::GetDecalTransparentColor 585

IDirect3DRMTexture::GetImage 586

IDirect3DRMTexture::GetShades 587

IDirect3DRMTexture::InitFromFile 587

IDirect3DRMTexture::InitFromResource 588

IDirect3DRMTexture::InitFromSurface 589

IDirect3DRMTexture::SetColors 590

IDirect3DRMTexture::SetDecalOrigin 591

IDirect3DRMTexture::SetDecalScale 592

IDirect3DRMTexture::SetDecalSize 593-594

IDirect3DRMTexture::SetDecalTrans-parency 594

IDirect3DRMTexture::SetDecalTransparentColor 595

IDirect3DRMTexture::SetShades 596

IDirect3DRMViewport 47

IDirect3DRMViewport::Configure 604

IDirect3DRMViewport::ForceUpdate 605

IDirect3DRMViewport::GetBack 50, 606

IDirect3DRMViewport::GetCamera 48, 606

IDirect3DRMViewport::GetDevice 607

IDirect3DRMViewport::GetDirect3D-Viewport 608

IDirect3DRMViewport::GetField 50, 609

IDirect3DRMViewport::GetFront 50, 610

IDirect3DRMViewport::GetHeight 611

IDirect3DRMViewport::GetPlane 612

IDirect3DRMViewport::GetProjection 613

IDirect3DRMViewport::GetUniform-Scaling 613-614

IDirect3DRMViewport::GetWidth 614

IDirect3DRMViewport::GetX 612, 615

IDirect3DRMViewport::GetY 617

IDirect3DRMViewport::Init 618

IDirect3DRMViewport::InverseTransform 619

IDirect3DRMViewport::Pick 620

IDirect3DRMViewport::Render 621

IDirect3DRMViewport::SetBack 50, 622

IDirect3DRMViewport::SetCamera 48, 623

IDirect3DRMViewport::SetField 50, 624

IDirect3DRMViewport::SetFront 50, 625

IDirect3DRMViewport::SetPlane 625

IDirect3DRMViewport::SetProjection 626

IDirect3DRMViewport::SetUniformScaling 627-628

IDirect3DRMViewport::Transform 628

IDirect3DRMVisualArray 131

IDirect3DRMWinDevice::HandleActivate 631, 633, 636-637, 639

IDirect3DRMWinDevice::HandlePaint 632, 639

IDirect3DRMWrap 169

IDirect3DRMWrap::Apply 169, 636-637

IDirect3DRMWrap::ApplyRelative 169, 637

IDirect3DRMWrap::Init 638

IDirect3DViewport 321

IDirect3DViewport::AddLight 330

IDirect3Dviewport::SetBackground 330

IDirectDraw 313

IDirectDraw::Blt 287

IDirectDraw::CreatePalette 280, 284

IDirectDraw::CreateSurface 277, 280, 302-303

IDirectDraw::EnumDisplayModes 313

IDirectDraw::SetCooperativeLevel 275, 300, 302

IDirectDraw::SetCoorperativeLevel 301

IDirectDraw::SetDisplayMode 275

IDirectDraw2::CreatePalette 306

IDirectDrawPalette::SetEntries 307

IDirectDrawSurface::GetAttachedSurface 303

IDirectDrawSurface2::Blt 304

IDirectDrawSurface2::SetColorKey 279

IDirectDrawSurface2::SetPalette 308

IDirectDRMFrame::GetOrientation 122

IDirectDRMFrame::GetPosition 123

IDirectDRMFrame::SetVelocity 124

IDirectSound 218

IDirectSound::CreateSoundBuffer 218

IDirectSound::DuplicateSoundBuffer 226

IDirectSound::SetCooperativeLevel 218

IDirectSound3Dbuffer 233

IDirectSound3DBuffer::GetConeAngles 235

IDirectSound3DBuffer::GetCone-Orientation 235

IDirectSound3DBuffer::GetConeOutside-Volume 235

IDirectSound3DBuffer::GetMaxDistance 235

IDirectSound3DBuffer::GetMinDistance 235

IDirectSound3DBuffer::GetPosition 236

IDirectSound3DBuffer::GetVelocity 236

IDirectSound3DBuffer::SetConeAngles 235

IDirectSound3DBuffer::SetConeOrientation 235

IDirectSound3DBuffer::SetConeOutside-Volume 235

IDirectSound3DBuffer::SetMaxDistance 235

IDirectSound3DBuffer::SetMinDistance 235

IDirectSound3DBuffer::SetPosition 236, 239

IDirectSound3DBuffer::SetVelocity 236

IDirectSound3DListener 238

IDirectSound3Dlistener 233

IDirectSound3DListener::GetDoppler-Factor 236

IDirectSound3DListener::GetOrientatinno 234

IDirectSound3DListener::QuesryInterface 238

IDirectSound3DListener::SetDopplerFactor 236

IDirectSound3DListener::SetOrientation 234

IDirectSoundBuffer::Lock 218, 227

IDirectSoundBuffer::Play 218, 226

IDirectSoundBuffer::SetPan 229

IDirectSoundBuffer::Stop 218

IDirectSoundBuffer::Unlock 218, 227

Immediate Mode 6, 10, 291-292

import a WAV file 217

Import Resource 217

Includes 19

Index 344

InitApp 298

INITGUID 19

InitServices 299

InitSound 218

inside cone 234

interface 13

IUnknown 13

J

JOY_POV 193

JOY_RETURNPOV 193-194

JOY_RETURNPOVCTS 193-194

JoyBackward 195-196

JOYCAPS 188-189

JOYCAPS structure 194

JOYCAPS_HASZ 194

JOYERR_NOERROR 188

JOYERR_UNPLUGGED 188

JoyForward 195-196

joyGetDevCaps 188, 194

joyGetNumDevs 187

joyGetPosEx 187, 194-195

JOYINFOEX 195

JOYINFOEX Structure 190

JoyLeft 195, 197

JoyRight 195-196, 198

Joystick Input 190

joystickCaps 194

JoyStop 195-196

K

Keyboard Input 120

L

Light Types 8

linear fog 256

LoadAccelerators 19

LoadAnimation 92

LoadAnimationSet 93, 246-247

LoadFrameHierarchy 99-100

Loading Textures 90

LoadObject 90

LoadResource 221

loadTextures 90

LoadWave 219

LoadWell 84

Local state changes 335

LockResource 221

LPD3DDEVICEDESC 314

LPD3DVECTOR 122

LPDIRECT3DRMFRAME 84, 206

LPDIRECT3DRMFRAMEARRAY 206

LPDIRECTDRAWSURFACE 297

LPDIRECTSOUNDBUFFER 220

Lvertex 344

M

Main Loop 297

Main Screen 18

Main Window 22

Materials 108

Maximum Rendering Quality 42

MCI_CLOSE 233

MCI_OPEN 232

MCI_OPEN_PARMS 232

MCI_PLAY 232

MCI_PLAY_PARMS 232

mciSendCommand 232-233

member function 13

Members 104

Mesh 109

Meshbuilder 84

Message Handling 30, 311

Message Processing Loop 23

methods 13-14

MFC 18

Microsoft Foundation Class 18

MIDI 217-218, 232

minidrivers 187

minimized 20

mipmapping 7

Mipmaps 7

mmioFOURCC 223

model coordinates 75

monochromatic lighting 39, 63

monochromatic model 44

morphing 155

morphing landscapes 262

Mouse Input 127

MoveBackward 126, 231

MoveForward 126, 231

MultiplyTransform 344

MyErrorToString 26

N

normal 144

normal vector 144

O

OP_EXIT 326-327

OP_TRIANGLE_LIST 327

Open Templates 104

openBMP 282

OpenGL 10

Orthographic 7

outside cone 234

overlays 37

P

page flipping 322

PainterÕs Algorithm 203

palette 307

palette index 279

PALETTEENTRY 277, 282

pan 229

Parallel Point Lighting 8, 63, 65

ParseWaveMemory 222

PeekMessage 19, 23, 309

perspective projections 7

perspective-corrected texture mapping 7

Phong 145

Phong Shading 39

pickable object 128

PlayMusic 232-233

point source 234

Point Source Lighting 63, 65

porting 292

PositionMesh 91

PostQuitMessage 30

previousInstance 23

primary 307

primary buffer 226, 230

primary surface 277, 307

Prism Collision Member Function 208

Prism Collision Object 202

PROCESS_VERTICES 326

ProcessFrame 309

PROCESSVERTICES_DATA 326

Q

QueryInterface 13

QWORD aligned 327

R

Ramp Color 8

ramp lighting 63

ramp lighting model 39

range of motion 187

readBMPIntoSurfaces 280-281

Real time Animation Keyframing 8

Real time object deformation 7

Reflection Mapping 7

RegisterClass 27, 298

Release 13

Render 287

render state 336

rendering engines 291

Rendering The Scene 338

Resource menu item 215

RestorePrimarySurfaces 304

Restricted Templates 104

Retained Mode 6, 11

RGB color 39

RGB Lighting 63

RGBQUAD 281-282

RIFF WAVE 223

Rotation 72-73

S

Scale 74

ScaleFrame 94

ScaleScene 245

Scaling 72

scene capture 340

screen size 296

secondary buffers 226

SetAnimationCallback 98

setAnimationCallback 97

SetBack 46

SetCapture 133

SetCurrentViewport 344

SetCursor 134

SetDisplayMode 303

SetLightState 345

SetPickable 130

SetRenderState 345

SetRenderTarget 345

Setting Up Our Joystick 194

SetTransform 345

SetWindowPos 301

shadowLight 251

Shadows 250

Sharing Palettes 308

ShowWindow 40, 298

sndPlaySound 214

Sound Cones 234

spectral interpolant 38

Sphere Collision Member Function 209

Sphere Collision Object 202

Spotlight 8, 63, 66

State Information 335

State Variables 346

states 335

StopMove 126, 197

Swapping Buffers 305, 322

T

Template Name 104

TLVertex 345

top vector 234

Transform 346

Transformations 72

transitions 243

TranslateAccelerator 19, 25

TranslateMessage 19, 25, 309

Translation 72

Triangle Data 327

Triangle Fan 345

Triangle Strip 345

True Color RGB 8

Turn 198, 229-230

TurnLeft 126, 231

TurnRight 126, 198, 231

Tutorial 17

TutorInfo structure 20, 35

U

UpdateWindow 40

UUID 104

V

Vertex 345

Vertex color 7

vertex color 38

Vertex Data 326, 334

Vertex Handling 337

video (.avi) mapping 7

viewing Frustum 48

Viewport 47

Virtual Reality 4, 348

vtable 14

W

WaitMessage 309

Walk 229

WAV file 215

WAVE menu item 215

WAVEFILE 220

WAVEFORMATEX 215

WAVEMIX.DLL 214

windowed application 18

WindowProc 121, 311

WinMain 19, 22, 274, 293

WM_KEYDOWN 121

WM_PAINT 41

WNDCLASS 27

WNDCLASS structure 27

Word.Picture.6 170

world coordinates. 75

wrap 168

Wrapping Flags 169

X

x5.cpp 85

Z

Z-buffer 7, 278-279, 319, 335, 339