Index
A
- AddParticle() function / Particle effects
- advanced materials
- about / Advanced Materials
- A key / Upgrading the camera to a free camera
- AlphaTestValue parameter / Drawing Billboards
- ambient lighting
- about / Ambient lighting
- amt argument / Curve interpolation
- animation
- object animation / Object animation
- keyframed animation / Keyframed animation
- skinned animation / Skinned animation
- skinned animation, playing / Playing a skinned animation
- play speed, changing / Changing an animation's play speed
- Update() function / Changing an animation's play speed
- animation channel / Loading a skinned model
- AnimationClip class / Skinned animation
- AnimationContentDictionary object / Loading a skinned model
- AnimationPlayer class, creating / Playing a skinned animation
- anisotropic filtering / Texture sampling
- arc-ball camera
- about / Additional camera types: Arc-Ball
- ArcBall Camera class / Additional camera types: Arc-Ball
- LoadContent() method / Additional camera types: Arc-Ball
- ArcBall Camera class / Additional camera types: Arc-Ball
- aspect ratio / Drawing a model
B
- base.Draw() / Depth of field
- base.Process() function / Loading a skinned model
- BasicEffect / Drawing a model, Creatingspecular highlightsaboutHLSLphong specular highlights a Material class to store effect parameters
- BasicTexture parameter / Texture mapping
- Billboards
- drawing / Drawing Billboards
- non-rotating / Non-rotating billboards
- BillboardSystem / Placing plants on the terrain
- billboard system
- adding, to render clouds / Adding the finishing touches
- BillboardSystem class
- creating / Creating the BillboardSystem class
- black and white post processor
- about / Black and white post processor
- BoundingFrustum class / View frustum culling
- BoundingSphere member variable / Calculating bounding spheres for models
- bounding spheres
- calculating, for models / Calculating bounding spheres for models
- boundingSphere value / Calculating bounding spheres for models
- bounding volume
- buildBoundingSphere() / Assigning a shader to a model
C
- CachedEffect variable / Assigning a shader to a model
- camera
- upgrading, to free camera / Upgrading the camera to a free camera
- types / Additional camera types: Arc-Ball
- arc-ball camera / Additional camera types: Arc-Ball
- chase camera / Additional camera types: chase camera
- Camera base class / Creating a Camera class
- Camera class
- creating / Creating a Camera class
- Catmull-Rom interpolation
- about / Curve interpolation
- KeyframedObjectAnimation class, modifying / Curve interpolation
- amt argument / Curve interpolation
- wrap() function / Curve interpolation
- cellSize variable / Building a terrain from a heightmap
- chase camera
- about / Additional camera types: chase camera
- ChaseCamera class, code / Additional camera types: chase camera
- ChaseCamera class
- circular queue
- about / Particle effects
- clipped / Drawing a model
- clipping plane / Creating a reflective water effect
- clouds
- creating, with spherical billboarding / Creating clouds with spherical billboarding
- CModel class / Creating a Custom Model class, Creating a Camera class, Calculating bounding spheres for models, Assigning a shader to a model, Phong specular highlights, Creating a reflective water effect, Advanced Materials
- constructor function / Particle effects
- ContentManager class / Loading a model
- Content Processor property / Loading a skinned model
- ContentSerializer attribute / Skinned animation
- coordinate system
- about / The 3D coordinate system
- CopyEffect parameter / Assigning a shader to a model
- createBuffers() function / Building a Race Track from a Curve
- CreateLookAt() function / Creating a target camera
- CreateLookAt() static function / Drawing a model
- CreatePerspectiveFieldOfView() function / Drawing a model
- cube map
- cube mapping
- about / Cube mapping: Making a sky sphere
- SkySphere class, creating / Cube mapping: Making a sky sphere
- reflections, simulating / Cube mapping: Reflections
- curve interpolation
- about / Curve interpolation
- Custom Model class
- creating / Creating a Custom Model class
- cylindrical billboarding / Drawing Billboards
D
- 3D coordinate system
- about / The 3D coordinate system
- depth bias / shadow mappingdepth texture, projecting onto sceneShadow mapping—performing the depth comparison
- depth buffer / Drawing Billboards
- depth of field effect
- about / Depth of field
- LoadContent() function / Depth of field
- Draw() function / Depth of field
- GaussianBlur class / Depth of field
- base.Draw() / Depth of field
- depth values
- storing / Storing depth and normal values
- detail texture
- adding, to terrain / Adding a detail texture to the terrain
- effect parameters / Adding a detail texture to the terrain
- lerp() function / Adding a detail texture to the terrain
- Terrain class / Adding a detail texture to the terrain
- Draw() function / Adding a detail texture to the terrain
- LoadContent() method / Adding a detail texture to the terrain
- diffuse colors / Diffuse colors
- directional lighting / Lambertian directional lighting
- D key / Upgrading the camera to a free camera
- Draw() call / Non-rotating billboards
- Draw() function / Drawing a model, View frustum culling, Assigning a shader to a model, Using the prelighting renderer, Variance shadow mapping—blurring the depth texture, Cube mapping: Making a sky sphere, Drawing Billboards, Non-rotating billboards, Particle effects, Particle fire, Building a terrain from a heightmap, Multitexturing, Adding a detail texture to the terrain, Placing plants on the terrain, Adding the finishing touches, Post processing, Depth of field, Glow post processor, Moving a car along the track, Loading a skinned model
- Draw() method / Creating a Custom Model class, Creating a target camera, Drawing Billboards
- drawBillboards() function / Non-rotating billboards
- drawDepthNormalMap() function / Creating the prelighting renderer
- draw function / Advanced Materials, Playing a skinned animation
- drawing
- model / Drawing a model
E
- Effect / Assigning a shader to a model
- effect
- about / Drawing a model
- Effect class / Creatingspecular highlightsaboutHLSLphong specular highlights a Material class to store effect parameters
- Effect instance / Post processing
- effect parameter / Gaussian blur post processor
- effect parameters / Assigning a shader to a model, Building a terrain from a heightmap, Adding a detail texture to the terrain
- about / Drawing Billboards
F
- First-Person-Shooter (FPS) games / Upgrading the camera to a free camera
- FlattenSkeleton() function / Loading a skinned model
- fog
- about / Fog
- frame
- about / Drawing a model
- FreeCamera class / Upgrading the camera to a free camera, Drawing Billboards
G
- Game1 class / Drawing a model, Creating a reflective water effect, Depth of field
- Game class / Loading a model
- Gaussian blur / Variance shadow mapping—blurring the depth texture
- GaussianBlur class / Gaussian blur post processor, Depth of field
- Gaussian blur post processor
- about / Gaussian blur post processor
- gaussianFn() function / Gaussian blur post processor
- GaussianBlur class / Gaussian blur post processor
- effect parameter / Gaussian blur post processor
- Gaussian function / Gaussian blur post processor
- Gaussian function / Gaussian blur post processor
- generateFrustum() function / View frustum culling
- generateParticles() function / Non-rotating billboards, Particle effects
- getHeights() function / Building a terrain from a heightmap
- glow post processor effect
- about / Glow post processor
- Draw() function / Glow post processor
- GraphicsDevice / Drawing a model
- GraphicsDevice.Clear() function / Drawing a model
- grass value / Placing plants on the terrain
H
- heightmap
- terrain, building from / Building a terrain from a heightmap
- new Terrain class, creating / Building a terrain from a heightmap
- getHeights() function / Building a terrain from a heightmap
- heights[,] array / Building a terrain from a heightmap
- cellSize variable / Building a terrain from a heightmap
- normals / Building a terrain from a heightmap
- TerrainEffect.fx effect / Building a terrain from a heightmap
- effect parameters / Building a terrain from a heightmap
- TextureTiling parameter / Building a terrain from a heightmap
- Projection parameters / Building a terrain from a heightmap
- View parameters / Building a terrain from a heightmap
- Draw() function / Building a terrain from a heightmap
- LoadContent() method / Building a terrain from a heightmap
- heights array / Placing plants on the terrain
- heights[,] array / Building a terrain from a heightmap
- hierarchical animation
- about / Hierarchical animation
- windmill, loading / Hierarchical animation
- animation, loading / Hierarchical animation
- Update() function / Hierarchical animation
- HLSL
- starting / Getting started
- shader, assigning to model / Assigning a shader to a model
- simple effect, creating / Cshadersassigning, to modelreating a simple effect
- texture mapping / Texture mapping
- texture sampling / Texture sampling
- diffuse colors / Diffuse colors
- ambient lighting / Ambient lighting
- lambertian directional lighting / Lambertian directional lighting
- phong specular highlights / Phong specular highlights, Creatingspecular highlightsaboutHLSLphong specular highlights a Material class to store effect parameters
- material class, creating to store effect parameters / Creatingspecular highlightsaboutHLSLphong specular highlights a Material class to store effect parameters
- point light, implementing with / Implementing a point light with HLSL
- spot light, implementing with / Implementing a spot light with HLSL
I
- index buffer
- interpolatePositions() function / Building a Race Track from a Curve
- IRenderable interface / Adding the finishing touches
K
- Keyframe class / Skinned animation
- keyframed animation
- about / Keyframed animation
- ObjectAnimation class / Keyframed animation
- uses / Keyframed animation
- Update() function / Keyframed animation
- Update code / Keyframed animation
- KeyframedObjectAnimation class, modifying / Curve interpolation
L
- lambertian directional lighting
- about / Lambertian directional lighting
- Lambertian lighting / Lambertian directional lighting, Storing depth and normal values
- lerp() function / Creating a reflective water effect, Adding a detail texture to the terrain
- LightEffect.fx effect / Normal mapping
- light map
- creating / Creating the light map
- used, for drawing models / Drawing models with the light map
- LightMaterial class / Normal mapping
- lights
- multiple lights, drawing / Drawing multiple lights
- Load() function / Loading a model
- LoadContent() function / Upgrading the camera to a free camera, Using the prelighting renderer, Cube mapping: Making a sky sphere, Adding the finishing touches, Post processing, Depth of field, Building a Race Track from a Curve, Loading a skinned model
- LoadContent() method / Loading a model, Creating a Custom Model class, Creating a target camera, Additional camera types: Arc-Ball, Creatingspecular highlightsaboutHLSLphong specular highlights a Material class to store effect parameters, Creating a reflective water effect, Building a terrain from a heightmap, Adding a detail texture to the terrain
- LoadContent function / Cshadersassigning, to modelreating a simple effect, Placing plants on the terrain
- loading
- model / Loading a model
- local / Matrices
M
- Material / Creatingspecular highlightsaboutHLSLphong specular highlights a Material class to store effect parameters
- material class
- creating, to store effect parameters / Creatingspecular highlightsaboutHLSLphong specular highlights a Material class to store effect parameters
- Material class / Projective texturing
- matrices
- about / Matrices
- Matrix class / Drawing a model, Creating a target camera
- mesh / Matrices
- meshes
- about / Loading a model
- MeshHelper.FindSkeleton() function / Loading a skinned model
- MeshTag class / Assigning a shader to a model, Diffuse colors, Advanced Materials
- method
- PreDraw / Creating a reflective water effect
- Mip mapping
- about / Texture sampling
- model
- loading / Loading a model
- adding, to content project / Loading a model
- drawing / Drawing a model
- shader, assigning to / Assigning a shader to a model
- model attachments
- about / Model attachments
- Model class / Loading a model
- modelMaterial / Creatingspecular highlightsaboutHLSLphong specular highlights a Material class to store effect parameters
- ModelMeshPart / Assigning a shader to a model
- models
- bounding spheres, calculating / Calculating bounding spheres for models
- drawing, with light map / Drawing models with the light map
- modelTransformations array / Drawing a model
- MouseState member variable / Upgrading the camera to a free camera
- Move() function / Upgrading the camera to a free camera
- mul function / Cshadersassigning, to modelreating a simple effect
- multiple lights
- drawing / Drawing multiple lights
- multitexturing
- about / Multitexturing
- texture parameters, modifying / Multitexturing
- pixel shader, updating / Multitexturing
- values, setting to effect / Multitexturing
- values, setting in Game1 class / Multitexturing
N
- normalize() function / Lambertian directional lighting
- normal mapping
- about / Normal mapping
- normal maps
- about / Normal mapping
- generating, Photoshop used / Generating normal maps with Photoshop
- normal values
- storing / Storing depth and normal values
O
- object animation
- about / Object animation
- ObjectAnimation class / Object animation
- Update() function / Object animation
- ObjectAnimation class / Object animation, Keyframed animation
- ObjectAnimationFrame class / Keyframed animation
- object space / Matrices
- origin
- about / The 3D coordinate system
P
- particles
- about / Particle effects
- particle smoke
- about / Particle smoke
- ParticleSystem class / Particle fire
- Photoshop
- using, for normal map generation / Generating normal maps with Photoshop
- pitch values / Upgrading the camera to a free camera
- pixel shader / Implementing a point light with HLSL
- point light
- about / Implementing a point light with HLSL
- implementing, with HLSL / Implementing a point light with HLSL
- LightAttenuation value / Implementing a point light with HLSL
- LightFalloff value / Implementing a point light with HLSL
- pixel shader / Implementing a point light with HLSL
- POSITION0 semantics / Cshadersassigning, to modelreating a simple effect
- post processing effect
- about / Post processing
- PostProcessor class / Gaussian blur post processor
- PPLight.fx function / Creating the prelighting renderer
- PreDraw method / Creating a reflective water effect
- prelighting
- about / Prelighting
- process / Prelighting
- prelighting renderer
- creating / Creating the prelighting renderer
- using / Using the prelighting renderer
- PrelightingRenderer / Creating the prelighting renderer
- PrelightingRenderer class / Shadow mapping—drawing the depth map, Variance shadow mapping—blurring the depth texture
- prepareMainPass() function / Creating the prelighting renderer
- Process() function / Loading a skinned model
- ProcessAnimation() function / Loading a skinned model
- ProcessAnimations() function / Loading a skinned model
- projection matrix / Matrices
- Projection parameters / Building a terrain from a heightmap
- projective texturing
- about / Projective texturing
- difference / Projective texturing
- orthographic matrix / Projective texturing
- effect, creating / Projective texturing
- texture, sampling from / Projective texturing
R
- Race Track
- building, from curve / Building a Race Track from a Curve
- interpolatePositions() function / Building a Race Track from a Curve
- indices, creating / Building a Race Track from a Curve
- createBuffers() function / Building a Race Track from a Curve
- LoadContent() function / Building a Race Track from a Curve
- car, moving / Moving a car along the track
- Draw() function / Moving a car along the track
- RaceTrack class / Building a Race Track from a Curve
- reflective water effect
- creating / Creating a reflective water effect
- RenderCapture class / Post processing
- render clouds
- billboard system, adding / Adding the finishing touches
- Right vectors / Drawing Billboards
- root / Matrices
- Rotate() method / Upgrading the camera to a free camera
- rotation, transformations / Matrices
S
- sampler / Texture mapping
- saturate() function / Lambertian directional lighting
- scaling (changing size), transformations / Matrices
- SetClipPlane() function / Creating a reflective water effect
- SetClipPlane function / Adding the finishing touches
- SetEffectParameters() / Creatingspecular highlightsaboutHLSLphong specular highlights a Material class to store effect parameters
- setEffectParameters() function / Non-rotating billboards
- setEffectParameters() method / Drawing Billboards
- SetModelEffect() function / Cshadersassigning, to modelreating a simple effect, Advanced Materials
- SetModelMaterial() function / Advanced Materials
- setNewEffect() function / Loading a skinned model
- shader effects
- normal mapping / Normal mapping
- cube mapping / Cube mapping: Making a sky sphere
- shaders
- assigning, to model / Assigning a shader to a model, Cshadersassigning, to modelreating a simple effect
- shadow mapping
- about / Shadow mapping—drawing the depth map
- scene, rendering as depth texture / Shadow mapping—drawing the depth map
- shader, writing / Shadow mapping—drawing the depth map
- PrelightingRenderer class, updating / Shadow mapping—drawing the depth map
- depth texture, projecting onto scene / Shadow mapping—projecting the depth texture onto the scene, shadow mappingdepth texture, projecting onto sceneShadow mapping—performing the depth comparison
- depth comparison, performing / shadow mappingdepth texture, projecting onto sceneShadow mapping—performing the depth comparison
- Side parameters / Non-rotating billboards
- simple effect
- S key / Upgrading the camera to a free camera
- skinned animation
- about / Skinned animation
- SkinnedModelPipeline / Skinned animation
- ContentSerializer attribute / Skinned animation
- AnimationClip class / Skinned animation
- SkinningData class / Skinned animation
- playing / Playing a skinned animation
- AnimationPlayer class, creating / Playing a skinned animation
- Update() function / Playing a skinned animation
- world transforms, updating / Playing a skinned animation
- skin transforms, updating / Playing a skinned animation
- SkinnedModel class, updating / Playing a skinned animation
- Update() function, adding / Playing a skinned animation
- draw function / Playing a skinned animation
- StartClip() function, calling / Playing a skinned animation
- skinned model
- loading / Loading a skinned model
- SkinningData object / Loading a skinned model
- SkinnedModelPipeline project / Loading a skinned model
- Process() function / Loading a skinned model
- MeshHelper.FindSkeleton() function / Loading a skinned model
- FlattenSkeleton() function / Loading a skinned model
- ProcessAnimations() function / Loading a skinned model
- base.Process() function / Loading a skinned model
- SkinningData class / Loading a skinned model
- AnimationContentDictionary object / Loading a skinned model
- ProcessAnimation() function / Loading a skinned model
- animation channel / Loading a skinned model
- Content Processor property / Loading a skinned model
- rendering / Loading a skinned model
- setNewEffect() function / Loading a skinned model
- Draw() function / Loading a skinned model
- SkinnedModel class / Loading a skinned model
- LoadContent() function / Loading a skinned model
- SkinnedModel class / Loading a skinned model, Changing an animation's play speed
- SkinnedModel class, updating / Playing a skinned animation
- SkinnedModelPipeline / Skinned animation
- SkinnedModelPipeline project / Loading a skinned model
- SkinningData class / Skinned animation, Loading a skinned model
- SkinningData object / Loading a skinned model
- spaceship simulator
- about / Example—spaceship simulator
- specular highlights
- spherical billboarding / Drawing Billboards
- clouds, creating with / Creating clouds with spherical billboarding
- spot light
- about / Implementing a spot light with HLSL
- implementing, with HLSL / Implementing a spot light with HLSL
- new effect, creating / Implementing a spot light with HLSL
- StartClip() function / Playing a skinned animation
- StartClip() function, calling / Playing a skinned animation
- strobing / Adding a detail texture to the terrain
T
- Tag properties / Assigning a shader to a model
- target / Drawing a model
- target camera
- creating / Creating a target camera
- TargetCamera class / Upgrading the camera to a free camera
- Terragen
- sky boxes, rendering / Rendering sky boxes with Terragen
- about / Rendering sky boxes with Terragen
- downloading / Rendering sky boxes with Terragen
- general render settings / Rendering sky boxes with Terragen
- terrain
- detail texture, adding / Adding a detail texture to the terrain
- plants, placing / Placing plants on the terrain
- BillboardSystem / Placing plants on the terrain
- Terrain class / Building a terrain from a heightmap, Adding a detail texture to the terrain
- texture mapping
- about / Texture mapping
- texture sampling
- about / Texture sampling
- TextureTiling parameter / Building a terrain from a heightmap
- transformations
- transforms array / Loading a model
- translation (movement), transformations / Matrices
U
- Update() function / Creating a target camera, Upgrading the camera to a free camera, Drawing Billboards, Particle effects, Object animation, Keyframed animation, Hierarchical animation, Playing a skinned animation, Changing an animation's play speed
- Update() method / Creating a target camera, Upgrading the camera to a free camera
- Update code / Keyframed animation
- Up parameters / Non-rotating billboards
- up vector / Drawing a model
- Up vectors / Drawing Billboards
- UV coordinates / Texture mapping
V
- vertex
- vertex buffer
- VertexPositionTexture vertex type / Drawing Billboards
- VertexShaderInput struct / Particle effects
- VertexShaderOutput / Lambertian directional lighting
- VertexShaderOutput struct / Cshadersassigning, to modelreating a simple effect, Adding the finishing touches
- vertices
- about / Loading a model
- view frustum culling
- about / View frustum culling
- view matrix
- about / Matrices
- View parameters / Building a terrain from a heightmap
- VSM
- soft shadows, implementing / Variance shadow mapping—soft shadows
- about / Variance shadow mapping—soft shadows
- benefits / Variance shadow mapping—soft shadows
- depth texture, blurring / Variance shadow mapping—blurring the depth texture
- shadows, generating / Variance shadow mapping—generating shadows
W
- WaterEffect class / Creating a reflective water effect
- W key / Upgrading the camera to a free camera
- world matrix
- about / Matrices
- world space / Matrices
- wrap() function / Curve interpolation
X
- XNA game project
- setting up / Setting up a new project
Z
- Z-axis / The 3D coordinate system