В настоящее время я работаю с OpenGL ES 1.1 и использую соглашение DrawElements вместе с массивами вершин, нормалей, координат текстуры и индекса.
Недавно я столкнулся с этим, исследуя идею использования отображения Normal / Bump, которое ранее было невозможно с OpenGL ES: http://iphone-3d-programming.labs.oreilly.com/ch08.html
Я могу сгенерировать карту нормалей для объекта уже из моего 3D-моделлера, но я не совсем понимаю, будет ли нужен массив нормальных координат больше при реализации 2-го текстурного блока для нормального отображения, или будет Освещение + Цветовая текстура в сочетании с картой нормалей с помощью опции DOT3_RGB - это все, что требуется?
РЕДАКТИРОВАТЬ - После дальнейшего исследования освещения DOT3 я не уверен, что ответ, данный Огнианом, правильный. На этой странице http://www.3dkingdoms.com/tutorial.htm приведен пример это использование, и если вы посмотрите на бит кода раздела «Рендеринг и окончательный результат», там нет нормального массива. ClientState для обычных массивов никогда не включается.
Я также нашел здесь этот пост, Что такое освещение DOT3?, который хорошо это объясняет ... но подводит меня к другому вопросу. В комментариях сказано, что вместо перевода нормалей вы переводите направление света. Меня это смущает, как будто у меня есть игра со стационарной стеной ... зачем мне перемещать свет только для одной модели? Надеясь, что кто-то сможет дать хорошее объяснение всему этому ...