Доброго времени суток! Я провёл несколько дней в поисках формата 3D графики нужного мне для реализации определённых целей. Остановился на FBX. Он подходит для моих целей на все 100%. Тут я начал искать информацию о том как мне работать с данным форматом и наткнулся на множество проблем. Собственно поэтому решил спросить здесь. Формат FBX хранит данные в ASCII и в виде бинарных данных. Читать эти данные я буду своим приложением на С++ (VS 2015 + Freeglut). Я уже считывал структуру формата OBJ сохранённую в ASCII. Там на порядок проще читать данные, так как формат OBJ хранит лишь геометрию 3D модели. Я только начал вникать в работу с моделями и уже куча вопросов без ответа. Например читать лучше в ASCII или в виде бинарных данных и в чем отличие? Где найти подробное описание структуры FBX? Есть ли готовые библиотеки для чтения FBX реализованные на С/С++? Интересует любой мануал по работе с моделями. Может кто прошел через подобные проблемы?
1. Используй GLFW. Freeglut уже устарел морально 2. Нет такого понятия как "лучше читать". Бинарные данные в большинстве случаев меньше весят и удобнее считываются в IO потоке, так как их не нужно парсить построчно. MDL скажем вообще копируется единым куском в структуру model_t через memcpy, ибо бинарные данные являют собой дамп этой структуры (в общем случае) 3. Рекомендую ознакомиться с отзывами по использованию FBX. Есть официальный SDK от самих Autodesk, но формат этот связан с различными лицензиями, могут возникнуть проблемы в дальнейшем. Кроме того сам формат содержит множество ненужной информации, которая по сути не нужна для использования где-то, кроме профессиональных 3D пакетов
Лично я пришел к варианту SMD как промежуточный формат для экспорта из 3D редактора с последующей компиляцией в собственный формат движка. Реализация пока далека от завершения, но в итоге такой подход всегда удобнее чужих проприетарных форматов