Les bases de la programmation 3D
CHAPITRE 12
279
Appliquer une couleur à un vertex
Les cubes blancs ne sont pas des plus esthétiques, vous en conviendrez aisément. Il est
temps de les rendre plus joyeux en leur donnant de la couleur. Jusqu’à présent, vous avez
utilisé des vertices de type VertexPositionColor qui, comme leur nom l’indique, possèdent
deux propriétés : la première concerne la position dans l’espace et la seconde, la couleur.
Reprenez la méthode InitializeVertices() (un simple copier-coller suffit) de la classe
Cube et pour chaque vertex, modifiez la propriété Color :
private void InitializeVertices()
{
vertices = new VertexPositionColor[8];
// Front Top left corner
vertices[0].Position = new Vector3(position.X - widthOver2, position.Y +
➥widthOver2, position.Z + widthOver2);
vertices[0].Color = Color.White;
// Front Bottom right corner
vertices[1].Position = new Vector3(position.X + widthOver2, position.Y -
➥widthOver2, position.Z + widthOver2);
vertices[1].Color = Color.Red;
// Front Bottom left corner
vertices[2].Position = new Vector3(position.X - widthOver2, position.Y -
➥widthOver2, position.Z + widthOver2);
Figure 12-15
Parcourez la scène 3D
=Labat FM.book Page 279 Vendredi, 19. juin 2009 4:01 16
CHAPITRE 12
279
Appliquer une couleur à un vertex
Les cubes blancs ne sont pas des plus esthétiques, vous en conviendrez aisément. Il est
temps de les rendre plus joyeux en leur donnant de la couleur. Jusqu’à présent, vous avez
utilisé des vertices de type VertexPositionColor qui, comme leur nom l’indique, possèdent
deux propriétés : la première concerne la position dans l’espace et la seconde, la couleur.
Reprenez la méthode InitializeVertices() (un simple copier-coller suffit) de la classe
Cube et pour chaque vertex, modifiez la propriété Color :
private void InitializeVertices()
{
vertices = new VertexPositionColor[8];
// Front Top left corner
vertices[0].Position = new Vector3(position.X - widthOver2, position.Y +
➥widthOver2, position.Z + widthOver2);
vertices[0].Color = Color.White;
// Front Bottom right corner
vertices[1].Position = new Vector3(position.X + widthOver2, position.Y -
➥widthOver2, position.Z + widthOver2);
vertices[1].Color = Color.Red;
// Front Bottom left corner
vertices[2].Position = new Vector3(position.X - widthOver2, position.Y -
➥widthOver2, position.Z + widthOver2);
Figure 12-15
Parcourez la scène 3D
=Labat FM.book Page 279 Vendredi, 19. juin 2009 4:01 16
