CHAPTER 2 ■ SETTING UP DIFFERENT CAMERA MODES IN YOUR 3D WORLD
131
basicEffect.Begin();
foreach (EffectPass pass in basicEffect.CurrentTechnique.Passes)
{
pass.Begin();
device.Vertices[0].SetSource(terrainVertexBuffer, 0,
➥
VertexPositionNormalTexture.SizeInBytes);
device.Indices = dynTerrainIndexBuffer;
device.VertexDeclaration = myVertexDeclaration;
int noTriangles = triangleList.Count;
device.DrawIndexedPrimitives(PrimitiveType.TriangleList, 0, 0,
➥
width * height, 0, noTriangles);
pass.End();
}
basicEffect.End();
Don’tforgettocallthismethodfromwithinyourDraw method:
DrawTerrain();
device.Indices = null;
The last line is required because you cannot change the contents of a DynamicIndexBuffer
while it is set as active on the graphics ...