私は頂点構造を持っています:
public struct VertexMultitextured
{
public Vector3 Position;
public Vector3 Normal;
public Vector4 TextureCoordinate;
public Vector4 TexWeights;
public static int SizeInBytes = (3 + 3 + 4 + 4) * sizeof(float);
public static VertexElement[] VertexElements = new VertexElement[]
{
new VertexElement( 0, VertexElementFormat.Vector3, VertexElementUsage.Position, 0 ),
new VertexElement( sizeof(float) * 3, VertexElementFormat.Vector3, VertexElementUsage.Normal, 0 ),
new VertexElement( sizeof(float) * 6, VertexElementFormat.Vector4, VertexElementUsage.TextureCoordinate, 0 ),
new VertexElement( sizeof(float) * 10, VertexElementFormat.Vector4, VertexElementUsage.TextureCoordinate, 1 ),
};
}
それを使ったを作りたいVertexBuffer
です。この行を使用する場合:
terrainVertexBuffer = new VertexBuffer(device, typeof(VertexMultitextured),
vertices.Length, BufferUsage.WriteOnly);
構造が「IVertexTypeインターフェースを実装していない」というエラーが表示されます。それを実装するにはどうすればよいですか?または、このカスタム構造体を使用する簡単な方法はありますか?
ありがとう!