Click Here!
home account info subscribe login search My ITKnowledge FAQ/help site map contact us


 
Brief Full
 Advanced
      Search
 Search Tips
To access the contents, click the chapter and section titles.

Cutting Edge Direct 3D Programming
(Publisher: The Coriolis Group)
Author(s): Stan Trujillo
ISBN: 1576100502
Publication Date: 11/01/96

Bookmark It

Search this book:
 
Introduction
Acknowledgments

Chapter 1—A Quick Introduction To Visual C++
Developer Studio
The Windows SDK vs. MFC
Event-Driven Programming
The WinMain Function
Event Handlers
Message Maps
ClassWizard
AppWizards
Creating an MFC Application
Adding an Event Handler
A Custom Direct3D AppWizard
Windows Code, And Wrapping Up

Chapter 2—3D Graphics
3D Coordinate Systems
The Origin
Vectors
Planes
Vertices
Faces
Meshes
Normals
Translations
Translate
Scale
Rotate
Texture Mapping
The Nature of Textures
Texture Scaling
Texture Wrapping
Texture Animation
Lighting
Color
Light Types
Perspective Transformation
3D to 2D
Hidden Surface Removal Techniques
Z-buffering
Rendering Methods
Wireframe
Unlit
Flat
Gouraud
Phong
Ray-tracing
Animation
Motion Attributes
Key-Framing
Conclusion

Chapter 3—Introduction To Direct3D
Direct3D
COM
Direct3DRM: The Master Interface
Creating Direct3D Objects
Modifying The Search Path
Controlling The Update Pace
Direct3DRMDevice: The Device Interface
Color Models
Rendering Options
Direct3DWinDevice: The WinDevice Interface
Direct3DRMViewport: The Viewport Interface
Field of View
Clipping
Direct3DRMFrame: The Frame Interface
Frame Hierarchies
Frame Positioning
Frame Movement
Move Callbacks
Direct3DRMMeshBuilder: The Meshbuilder Interface
Loading and Saving
Rendering Options
Face Access
Vertex Access
Translating And Scaling
Performance
Direct3DRMMesh: The Mesh Interface
Mesh Groups
Vertex Access
Creating Meshes With Meshbuilders
Direct3DRMFace: The Face Interface
Face Textures
Face Materials
Face Vertices
Direct3DRMTexture: The Texture Interface
Creating Textures
Texture Colors
Decals
Direct3DRMTextureWrap: The Texture Wrap Interface
Direct3DRMMaterial: The Material Interface
Specular Light Power
Specular Light Color
Emissive Light Color
Direct3DRMLight: The Light Interface
Ambient Lights
Point Lights
Directional Lights
Parallel Lights
Spotlights
Direct3DRMShadow: The Shadow Interface
Direct3DRMAnimation: The Animation Interface
Creating Keys
Setting Time In Animations
Animation Options
Direct3DRMAnimationSet: The Animation Set Interface
Loading Animation Sets
Setting Time In Animation Sets
Direct3D Data types
D3DVALUE
D3DVECTOR
D3DCOLOR
D3DRMBOX
D3DRMVERTEX
D3DRMQUATERNION
HRESULT
X Files
Conv3ds
Conclusion

Chapter 4—The Code
The Direct3D AppWizard
The Sample Application
Direct3D COM Interface Dependencies
Dependency Trees
Growing Your Own Dependency Trees
Sequence Of Events
Class Design
Division Of Labor
Initializing Direct3D
The InitInstance() Member Function
The OnCreate() Member Function
The CreateDevice() Function
The GetGUID() Function
Constructing Scenes
The CreateScene() Function
Maintaining Scenes
The OnIdle() Function
The OnActivate() Function
The OnPaint() Function
The OnSize() Function
The OnEraseBkgnd() Function
Using Callback Functions
Shutting Things Down
The OnDestroy() Function
Helper Functions
The ScaleMesh() Function
The GetMouse() Functions
COLORREF and D3DCOLOR Conversions
Experimental Learning

Chapter 5—Texture Mapping
Texture Mapping Testbed
Applying A Texture To A Mesh
The Jade Demo
The JadeWin Class
The JadeWin::CreateScene() Function
The JadeWin::MoveFrame() Function
The JadeWin Render Functions
Texture Wraps
The Wraps Demo
The WrapsWin Class
The WrapsWin::CreateScene() Function
The WrapsWin::LoadMeshes() Function
The WrapsWin::LoadWrapsTexture() Function
The WrapsWin::OnWrapsReset() Function
The WrapsWin::ApplyWraps() Function
Decals
The Decal Demo
The DecalWin Class
The DecalWin::CreateScene() Function
Transparency
The OrbStar Demo
The OrbStarWin Class
The OrbStarWin::CreateScene() Function
The OrbStar Callback Functions
Texture Animation
The TextureDrift Demo
The TextureDriftWin Class
The TextureDriftWin::CreateScene() Function
The TextureDriftWin::MoveTexture() Function
The ShowRoom Demo
The ShowRoomWin Class
The ShowRoom::CreateScene() Function
The ShowRoom::UpdateTexture() Function
Conclusion

Chapter 6—Light Sources And Shadows
Rendering Methods And Color Models
Ambient Lights
Demonstrating Ambient Light
The AmbientLightWin Class
The AmbientLightWin::CreateScene() Function
The AmbientLight Demo Render Functions
Point Lights
The Firefly Demo
The FireflyWin Class
The FireflyWin::CreateScene() Function
Directional Lights
The SpaceStation Demo
The SpaceStationWin Class
The SpaceStationWin::CreateScene() Function
Parallel Point Lights
The SpaceDonut Demo
The SpaceDonutWin Class
The SpaceDonutWin::CreateScene() Function
Spotlights
The Spotlight Demo
The SpotlightWin Class
The SpotlightWin::CreateScene() Function
The SpotlightWin::MoveLight() Function
The Spotlight Demo Render Functions
The Spotlight Demo Beam Functions
Multiple Light Sources
Shadows
The Shadow Demo
The ShadowWin Class
The ShadowWin::CreateScene() Function
The ShadowWin::AdjustSpin() Function
The Shadow Demo Render Functions
Conclusion

Chapter 7—Frames and Animation
Frame Hierarchies
The Molecule Demo
The MoleculeWin Class
The MoleculeWin::CreateScene() Function
The MoleculeWin::CreateHierarchy() Function
The MoleculeWin::CreateChildren() Function
The MoleculeWin Depth Functions
The MoleculeWin Children Functions
Key-Framing
The Rocket Demo
The RocketWin Class
The RocketWin::CreateScene() Function
The RocketWin::UpdateScene() Function
The RocketWin Animation Functions
The RocketWin Speed Functions
More Animation
The Target Demo
The TargetWin Class
The TargetWin::CreateScene() Function
The TargetWin::MoveTarget() Function
The TargetWin::OrientFrame() Function
Conclusion

Chapter 8—More About Meshes
Vertex Animation
The Cube Demo
The CubeWin Class
The CubeWin::CreateScene() Function
The CubeWin::UpdateCube() Function
The CubeWin Render Functions
Multiple Mesh Groups
The Cube2 Demo
The Cube2Win Class
The Cube2Win::CreateScene() Function
The Cube2Win::UpdateCube() Function
The Cube2Win::UpdateColors() Function
The Cube2Win Render Functions
Morphing
The MorphPlay Demo
Class Design
The MorphWin Class
The MorphWin::LoadMorphSequence() Function
The MorphWin::LoadMeshes() Function
The MorphWin::CreateAnimations() Function
The MorphWin::PrepareMorphVertices() Function
The MorphWin::GetNumMorphTargets() Function
The MorphWin::AddMorphKey() Function
The MorphWin::SetMorphTime() Function
The MorphWin::GetMorphMesh() Function
The MorphPlayWin Class
The MorphPlayWin::CreateScene() Function
The MorphPlayWin::OnFileOpen() Function
The MorphPlayWin::InitMorphSequence() Function
The MorphPlayWin::UpdateMorph() Function
The MorphPlayWin Mouse Functions
Conclusion

Chapter 9—Viewports
Field-Of-View
The Zoom Demo
The ZoomWin Class
The ZoomWin::CreateScene() Function
The ZoomWin::AdjustField() Function
The ZoomWin Animation Functions
Picking
The MeshPick Demo
The MeshPickWin Class
The MeshPickWin::CreateScene() Function
The MeshPickWin Mouse Functions
The MeshPickWin::PickMesh() Function
The MeshPickWin::UpdateDrag() Function
Picking Faces
The FacePick Demo
The FacePickWin Class
The FacePickWin::CreateScene() Function
The FacePickWin Mouse Functions
The FacePickWin::PickFace() Function
The FacePickWin::UpdateDrag() Function
The FacePickWin Color Functions
The FacePickWin File Functions
Using Multiple Viewports
The MultiView Demo
The MultiView Code
The MultiViewWin Class
The MultiViewWin::CreateScene() Function
The Modified RMWin Class
The RMWin::CreateDevice() Function
The RMWin::ConfigViewport() Function
The RMWin::CreateViewports() Function
The RMWin::Render() Function
The RMWin::OnSize() Function
The RMWin Viewport Functions
Conclusion

Chapter 10—Full-Screen Applications
DirectDraw
The DirectDraw Interface
Cooperative Levels
Display Modes
Page Flipping
Surfaces
Z-Buffering
Palettes
Modifying The RMWin Class
The RMWin Class
Removing Obsolete Functions
Adding Display Mode Support
Surface Support Functions
Palette Support
The OnCreate() Function
The InitDisplayMode() Function
The InitMainSurfaces() Function
The Palette Functions
The CreateDevice() Function
The ActivateDisplayMode() Function
The GetNumDisplayModes() Function
The GetCurDisplayMode() Function
The GetDisplayModeDims() Function
The GetCurDisplayModeDims() Function
The CreateSurface() Function
The ClearSurface() Function
The Render() Function
The FullScreen Demo
The FullScreenWin Class
The FullScreenWin() Function
The CreateScene() Function
The CreateMenuSurface() Function
The UpdateMenuSurface() Function
The CreateFPSSurface() Function
The UpdateFPSSurface() Function
The Render() Function
The KeyDown() Function
Conclusion
Appendix A
Index

Products |  Contact Us |  About Us |  Privacy  |  Ad Info  |  Home

Use of this site is subject to certain Terms & Conditions, Copyright © 1996-2000 EarthWeb Inc.
All rights reserved. Reproduction whole or in part in any form or medium without express written permission of EarthWeb is prohibited.