当我从wp运行Android的monogame游戏时,它可以运行:
public void InitBuffers()
{
meshVertices = new VertexData[meshVertexBuffer.VertexCount];
meshVertexBuffer.GetData<VertexData>(meshVertices);
meshIndices = new short[meshIndexBuffer.IndexCount];
meshIndexBuffer.GetData<short>(meshIndices);
vertices = new VertexData[meshVertices.Count() * maxAmountOfInstances];
indices = new short[meshIndices.Count() * maxAmountOfInstances];
}
meshVertexBuffer来自于其中包含顶点缓冲区的模型。在wp中,我发现meshVertices是一个来自meshvertexbuffer的数组,通过函数GetData,但是在android中GetData不起作用,并且得到错误:顶点缓冲区在OpenGL ES上是只写的
我想编写一个从vertexbuffer读取数据的函数,但我没有在wp中找到该结构。
我想要一个答案,如何将VertexBuffer从模型转换为数组?
答案 0 :(得分:0)
我发现这个问题我认为有助于解释你的问题。
问题:Opengl Vertex Array Objects
<强>更新强>
这可能也会有所帮助:Vertex Specification Best Practices。