<Page Background="Black"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
  <Viewport3D>
    <Viewport3D.Camera>
      <PerspectiveCamera Position="5,5,5" LookDirection="-1,-1,-1" />
    </Viewport3D.Camera>
    <Viewport3D.Children>
      <ModelVisual3D>
        <ModelVisual3D.Content>
          <AmbientLight />
        </ModelVisual3D.Content>
      </ModelVisual3D>
      <ModelVisual3D>
        <ModelVisual3D.Content>
          <Model3DGroup x:Name="Cube">

            <GeometryModel3D x:Name="Front">
              <GeometryModel3D.Material>
                <DiffuseMaterial Brush="Orange"/>
              </GeometryModel3D.Material>
              <GeometryModel3D.Geometry>
                <MeshGeometry3D Positions="1,1,1 -1,1,1 -1,-1,1 1,-1,1"
                                TextureCoordinates="1,1 0,1 0,0 1,0"
                                TriangleIndices="0 1 2 0 2 3"/>
              </GeometryModel3D.Geometry>
            </GeometryModel3D>

            <GeometryModel3D x:Name="Right">
              <GeometryModel3D.Material>
                <DiffuseMaterial Brush="Yellow"/>
              </GeometryModel3D.Material>
              <GeometryModel3D.Geometry>
                <MeshGeometry3D Positions="1,1,-1 -1,1,-1 -1,1,1 1,1,1"
                                TextureCoordinates="0,0 1,0 1,1 0,1"
                                TriangleIndices="0 1 2 0 2 3"/>
              </GeometryModel3D.Geometry>
            </GeometryModel3D>

            <GeometryModel3D x:Name="Back">
              <GeometryModel3D.Material>
                <DiffuseMaterial Brush="Red"/>
              </GeometryModel3D.Material>
              <GeometryModel3D.Geometry>
                <MeshGeometry3D Positions="-1,-1,-1 -1,1,-1 1,1,-1 1,-1,-1"
                                TextureCoordinates="1,0 1,1 0,1 0,0"
                                TriangleIndices="0 1 2 0 2 3"/>
              </GeometryModel3D.Geometry>
            </GeometryModel3D>

            <GeometryModel3D x:Name="Left">
              <GeometryModel3D.Material>
                <DiffuseMaterial Brush="Blue"/>
              </GeometryModel3D.Material>
              <GeometryModel3D.Geometry>
                <MeshGeometry3D Positions="-1,1,1 -1,1,-1 -1,-1,-1 -1,-1,1"
                                TextureCoordinates="1,1 0,1 0,0 1,0"
                                TriangleIndices="0 1 2 0 2 3"/>
              </GeometryModel3D.Geometry>
            </GeometryModel3D>

            <GeometryModel3D x:Name="Top">
              <GeometryModel3D.Material>
                <DiffuseMaterial Brush="Green"/>
              </GeometryModel3D.Material>
              <GeometryModel3D.Geometry>
                <MeshGeometry3D Positions="1,-1,1 1,-1,-1 1,1,-1 1,1,1"
                                TextureCoordinates="1,1 0,1 0,0 1,0"
                                TriangleIndices="0 1 2 0 2 3"/>
              </GeometryModel3D.Geometry>
            </GeometryModel3D>

            <GeometryModel3D x:Name="Bottom">
              <GeometryModel3D.Material>
                <DiffuseMaterial Brush="Purple"/>
              </GeometryModel3D.Material>
              <GeometryModel3D.Geometry>
                <MeshGeometry3D Positions="-1,-1,1 -1,-1,-1 1,-1,-1 1,-1,1"
                                TextureCoordinates="0,1 0,0 1,0 1,1"
                                TriangleIndices="0 1 2 0 2 3"/>
              </GeometryModel3D.Geometry>
            </GeometryModel3D>

          </Model3DGroup>
        </ModelVisual3D.Content>
      </ModelVisual3D>
    </Viewport3D.Children>
  </Viewport3D>
</Page>
