Итак, я пытаюсь написать небольшой фрагмент кода на С++, который будет считываться в файле (вертикали, нормали векторов, координаты текстур и грани вершин (v/vt/vn v/vt/vn v/vt/vn) и т. д. ) и я немного потерял себя.
Я начал с малого, читая только куб с только вершинами, цветами и гранями, но теперь я получил гораздо более полигональную модель (126 граней), где грани описываются по-другому (до того, как не было векторной нормали). или vert текстуры), поэтому я решил, что структура внутри структуры будет хорошим способом хранения этой информации.
inFile >> NUM_POLY;
indices = new polygon[NUM_POLY];
for (int i=0; i < NUM_POLY; i++)
{
inFile >> indices[i].a;
inFile >> indices[i].b;
inFile >> indices[i].c;
}
Это мой код в настоящее время со старой системой, но я изменил структуру на эту...
struct vertA {
int v;
int vt;
int vn;
};
struct vertB {
int v;
int vt;
int vn;
};
struct vertC {
int v;
int vt;
int vn;
};
struct polygon {
struct vertA;
struct vertB;
struct vertC;
};
Итак, что меня смутило, так это то, как я должен хранить первые 3 целых числа в структуре vertA, следующие 3 в vertB, затем vertC и снова возвращаться в цикл до конца файла...
Если кто-то может помочь, это будет большое спасибо!