Ansage berechnet stillschweigend den Tangentenraum nicht
Posted: 15 Feb 2025, 15:21
Ich verwende Annahme, um Modelle für meine Anwendung zu laden. Im Allgemeinen habe ich daran interessiert, Tangentenraum zu haben - Normalen, Tangenten und Bitangets. Es gibt eine Option für Annahmen, um sie zu berechnen: < /p>
// Calculates the tangents and bitangents for the imported meshes.
aiProcess_CalcTangentSpace = 0x1
< /code>
Dies tut jedoch in meinem Fall nichts. Das Netz, das ich zu importieren versuche, hat Normalen, aber keine Tangenten und Bitangents. So habe ich meine Dateien gelesen: < /p>
Assimp::Importer importer;
const aiScene* scene = importer.ReadFile(myFile,
aiProcess_Triangulate |
aiProcess_JoinIdenticalVertices |
aiProcess_OptimizeGraph |
aiProcess_OptimizeMeshes |
aiProcess_GenSmoothNormals |
aiProcess_CalcTangentSpace);
OutputDebugStringA(importer.GetErrorString());
aiMesh* mesh = scene->mMeshes[0];
if (!mesh->HasNormals() || !mesh->HasPositions() || !mesh->HasFaces() || !mesh->HasTangentsAndBitangents())
return false;
< /code>
Wenn ich diesen Code unterschließe, hat das "Mesh" PTR Normale, Tangetten und Bitangs sind null. Importer.GetErrorString () '
// Calculates the tangents and bitangents for the imported meshes.
aiProcess_CalcTangentSpace = 0x1
< /code>
Dies tut jedoch in meinem Fall nichts. Das Netz, das ich zu importieren versuche, hat Normalen, aber keine Tangenten und Bitangents. So habe ich meine Dateien gelesen: < /p>
Assimp::Importer importer;
const aiScene* scene = importer.ReadFile(myFile,
aiProcess_Triangulate |
aiProcess_JoinIdenticalVertices |
aiProcess_OptimizeGraph |
aiProcess_OptimizeMeshes |
aiProcess_GenSmoothNormals |
aiProcess_CalcTangentSpace);
OutputDebugStringA(importer.GetErrorString());
aiMesh* mesh = scene->mMeshes[0];
if (!mesh->HasNormals() || !mesh->HasPositions() || !mesh->HasFaces() || !mesh->HasTangentsAndBitangents())
return false;
< /code>
Wenn ich diesen Code unterschließe, hat das "Mesh" PTR Normale, Tangetten und Bitangs sind null. Importer.GetErrorString () '