OpenGL:Assimp网格不正确

时间:2017-04-05 13:20:16

标签: c++ opengl assimp

我目前正在尝试使用Assimp导入Mesh。由于某种原因,它显示不正确。我试图加载Suzanne:

Suzanne Open3D

这是来自Open3D Model Viewer的截图 - 它也使用了Assimp。这意味着模型文件是正确的。现在,当我尝试加载它时,它看起来像这样(在Wireframe中呈现):

Suzanne me

我一直在尝试很多东西,这就是为什么我将代码减少到最小(没有法线,texcoords等)以及为什么我没有使用我拥有的任何类(除了Shader类,经过广泛测试和精确测试):

currency

着色器也是最小化的:

{{books | sum:'price' | currency}}

这是Assimp的日志输出:

Assimp Log

1 个答案:

答案 0 :(得分:2)

没有测试过。但我因此而假设:

glBufferData(... sizeof(float) * pMeshData->mNumVertices ...);

您忘记将mNumVertices乘以3

glBufferData(... sizeof(float) * pMeshData->mNumVertices * 3 ...);

由于您已经拥有vertices,您还可以:

glBufferData(... sizeof(float) * vertices.size() ...);