Я работаю над системой скелетной анимации, использующей assimp для анализа файлов .fbx. sh - это возможность загружать файл .fbx, который содержит только арматуру (каркас / оснастка). Затем я загружаю эту арматуру в свою собственную структуру данных и назначаю ссылку на нее как на элемент me sh (несколько ячеек, указывающих на одни и те же данные арматуры).
После загрузки моего файла .fbx, который содержит единственную арматуру (экспортированную из блендера). Предполагается, что ассимп загружает все как положено:
Однако, похоже, что бит AI_SCENE_FLAGS_INCOMPLETE
работает перевернулся по какой-то причине, так как я оказался в следующем блоке:
if (this->aiScene->mFlags & AI_SCENE_FLAGS_INCOMPLETE)
{
std::string errorMessage = this->aiImporter.GetErrorString();
std::cout << "ERROR::ASSIMP::" << errorMessage << "\n";
std::cin.get();
exit(EXIT_FAILURE);
}
... only this->aiImporter.GetErrorString()
возвращает пустую строку, не предоставляя информации о том, почему это может быть.
Так что мой вопрос ... Почему бит AI_SCENE_FLAGS_INCOMPLETE
переворачивается в true, когда загружается только арматура? Должен ли я просто проигнорировать это и продолжить свой веселый путь, или есть какая-то причина для беспокойства?
(Да, я загрузил несколько других файлов, содержащих сетки без арматуры и сетки с арматурой без сообщений об ошибках. только проблема с файлом, содержащим ТОЛЬКО арматуру.)
РЕДАКТИРОВАТЬ (скриншот из отладки)