之前D3D画三角形的代码中有这一句,
device.VertexFormat = CustomVertex.TransformedColored.Format;
这是设置顶点格式;
画出的三角形如下,
顶点格式是描述一个三维模型的顶点信息的格式;可以包含以下内容,
位置坐标,顶点的三维坐标;
法向量;
颜色,顶点的颜色信息;
纹理坐标,顶点在纹理贴图上的坐标;
在d3d9中,顶点格式是通过定义一个结构体来实现的。这个结构体包含了所有需要描述的顶点属性。一般情况下,顶点格式至少包含位置属性。 struct Vertex { ......};
下面改成不同的顶点格式看一下;
改了下面几个,
device.VertexFormat = CustomVertex.PositionColored.Format;
device.VertexFormat = CustomVertex.PositionNormal.Format;
device.VertexFormat = CustomVertex.PositionNormalColored.Format;
出来的都是空窗口,
device.VertexFormat = CustomVertex.Transformed.Format; 这个没有颜色,
device.VertexFormat = CustomVertex.TransformedColoredTextured.Format;
这个和第一个一样的,目前没有纹理;
如果出现下图错误,
从net程序集中添加下面红线提示的这个,