有8个纹理坐标槽...每个可以填充不同的纹理...你只需要检查第一个
网格->mTextureCoords[0]
将其转换为类似“const struct aiVector3D*”的数组
并遍历索引 mTextureCoords[0][t]
注意我们循环 t 和它的二维数组
for (t = 0; t < mesh->mNumVertices; ++t) {
const struct aiVector3D* textureVec = &mesh->mTextureCoords[0][t];
printf("tex (%f,%f,%f)", textureVec->x, textureVec->y, textureVec->z );
}
希望对您有所帮助!我也卡在这里了!以为它没有加载...
现在:
Tex(0.159871,0.410298,0.000000)Tex(0.034839,0.369741,0.000000)Tex(0.147435,0.506447,0.000000)Tex(0.018893,0.493014,0.000000)Tex(0.159871,0.602596,0.000000)Tex(0.034839,0.616288,0.000000)Tex( 0.196806,0.695823,0.000000)Tex(0.082196,0.735817,0.000000)Tex(0.257118,0.783297,0.000000)Tex(0.159520,0.847968,0.000000)Tex(0.314932,0.833907,0.000000)Tex(0.318555,0.981848,0.000000)Tex(0.554152, 0.373114,0.000000)tex (0.557998,0.677465,0.000000)tex (0.442610,0.703479,0.000000)