我有一个包含UVW映射的.obj,我的assimp无法加载它

时间:2014-04-27 14:18:45

标签: ios .obj assimp

我正在使用来自ht tps的ios://github.com/cfr/assimp-ios 这些文件从3d max导出:

  • .OBJ h t t ps://drive.google.com/file/d/0B_Nuhl0WqfMjMUF5cks2YmR2Rlk/edit?usp = sharing
  • .mlt h t t ps://drive.google.com/file/d/0B_Nuhl0WqfMjMmtSSVZyYV85b3c/edit?usp = sharing

我使用以下语句导入文件:

NSString* path = [[[NSBundle mainBundle] resourcePath] stringByAppendingString:@"/unicity04_low_full2.obj"];
aiScene = aiImportFile([path cStringUsingEncoding:NSASCIIStringEncoding] ,aiProcessPreset_TargetRealtime_MaxQuality);

没有来自aiGetErrorString()的错误报告 然后我通过记录

中的值来检查导入的数据
aiScene->mMeshes[n]->mNumUVComponents[0]
aiScene->mMeshes[n]->mTextureCoords[0][k].x
aiScene->mMeshes[n]->mTextureCoords[0][k].y
aiScene->mMeshes[n]->mTextureCoords[0][k].z

(其中n和k是特定网格和顶点的索引)

结果是

  • 对于n
  • 的所有值,mNumUVComponents [0]为2
  • mTextureCoords [0] [k] .z对于n和k的所有值都是0但是
  • mTextureCoords [0] [k] .x,mTextureCoords [0] [k] .y是正确的 到.obj

    例如,.obj中第一个对象的第一个纹理坐标是vt -248.0264 1000.0000 50.0000相应的日志显示:

  • mNumUVComponents [0]是2

  • mTextureCoords [0] [0] .x是-248.0264

  • mTextureCoords [0] [0] .y是1000.0000 mTextureCoords [0] [0] .z是0

0 个答案:

没有答案