Assimp молча не может рассчитать касательное пространствоC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Assimp молча не может рассчитать касательное пространство

Сообщение Anonymous »

Я использую Assimp для загрузки моделей для использования для моего приложения. Как правило, я заинтересован в том, чтобы иметь касательное пространство - нормы, касательные и битангеты. Есть вариант для Assimp для их расчета: < /p>
// Calculates the tangents and bitangents for the imported meshes.
aiProcess_CalcTangentSpace = 0x1
< /code>
Однако в моем случае это ничего не делает. Сетка, которую я пытаюсь импортировать, имеет нормы, но нет касательных и битангентов. Вот как я читаю свои файлы: < /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>
Если я сломаю этот код, у PTR «сетка» есть нормальные нормы, но Tangets и Bitangent Importer.getErrorString () '

Подробнее здесь: https://stackoverflow.com/questions/710 ... gent-space
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»