Соответствие текстур различным частям модели 3ds в Opengl? - PullRequest
0 голосов
/ 09 марта 2010

Я пытаюсь отобразить текстуры дерева (в формате .3ds) в OpenGL и C ++. Я использую объекты буфера вершин, объекты массива вершин и шейдеры. Координаты вершин, нормали и координаты текстур загружаются в шейдер через glVertexAttribPointer.Мой вопрос, как я могу выбрать различные текстуры для разных частей модели (например, кора и листья)?

1 Ответ

0 голосов
/ 09 марта 2010

Два решения:

1) Визуализируйте иерархию объектов, и каждый объект отображается с использованием соответствующей текстуры.

2) Нарисуйте соответствующие текстуры одной текстурой. Координаты каждой текстуры треугольника сетки отображают правильную проекцию изображения.

Первое решение проще (кроме обработки иерархии). Второй требует сложного отображения текстуры загруженного объекта, но позволяет использовать одну текстуру (минимизировать память). Персонажи игры часто используют одну текстуру, которая имеет текстуру лица, рук и одежды.

...