Извлечь данные вершины из файла FBX? - PullRequest
0 голосов
/ 27 июня 2010

Я пытаюсь извлечь информацию о вершинах и карте UV из файла FBX, созданного с помощью 3ds max 2010.

Все, что я мог получить из файла, это хорошие данные вершин и индексов полигонов, но неверные карты UV.

Может ли кто-нибудь указать мне правильное направление или дать мне учебник?

1 Ответ

1 голос
/ 25 сентября 2010

Обратите внимание, что когда вы загружаете нормали для идеально гладкого объекта, они индексируются иначе, чем когда не гладкие.

Вот ссылка на некоторый код, который я сделал для загрузки файла FBX в системную память.Я подумал, что это может помочь. Вы хотите посмотреть на "MedelProcess_Mesh.cpp", чтобы ответить на некоторые вопросы, которые у вас могут возникнуть.Надеюсь, это поможет, помните, у меня там нет поддержки анимации.

ПРОСТОЙ ОТВЕТ ::

Для UV.

int uvIndex1 = mesh->GetTextureUVIndex(polyIndex, 0);
int uvIndex2 = mesh->GetTextureUVIndex(polyIndex, 1);
int uvIndex3 = mesh->GetTextureUVIndex(polyIndex, 2);
KFbxVector2 uv1 = uv->GetAt(uvIndex1);
KFbxVector2 uv2 = uv->GetAt(uvIndex2);
KFbxVector2 uv3 = uv->GetAt(uvIndex3);

Для Verts.

int vertexCount = mesh->GetControlPointsCount();
KFbxVector4* vertexArray = mesh->GetControlPoints();
...