Я хочу визуализировать объект, импортированный из файла obj wavefront. Объект имеет несколько групп и материалы:Как организовать объекты для рендеринга
# group one
g one
v ...
vt ...
vn ...
# material A
usemtl ...
f ...
# material B
usemtl ...
f ..
# second group
g two
v ...
vt ...
vn ...
# material C
usemtl ...
f ...
# material D
usemtl ...
f ...
Различные части модели должны быть оказаны по отдельности, так как они имеют различные материалы.
Я построю контейнер с информацией о модели, и я хотел бы знать, какой лучший/общий способ организовать «очередь» объектов для рендеринга.
Моя идея, которую я не знаю, хорошо это выглядит следующим образом (с псевдокодом): для каждой группы g
магазина всей информации вершины объекта VertexInformation g1, g2
и для каждого usemtl
хранит информацию о лицах (и используемом материале) в FaceInformation f1, f2, f3, f4
.
Тогда рендеринга будет выглядеть следующим образом:
load vertices g1
render f1 f2
load vertices g2
render f3 f4
Или, может быть, лучше, чтобы загрузить все вершины из g1
и g2
сразу?
Это так? Или у него есть некоторые гигантские недостатки?