OpenGL: задать несколько координат текстуры

#opengl #glsl #textures

#opengl #glsl #Текстуры

Вопрос:

Как задать несколько текстурных координат для одной вершины?

Ответ №1:

В немедленном режиме вы используете glMultiTexCoord для этого: http://www.opengl.org/sdk/docs/man/xhtml/glMultiTexCoord.xml

Пример кода

 glBegin(GL_TRIANGLES);
glMultiTexCoord2f(GL_TEXTURE0, s0, t0);
glMultiTexCoord2f(GL_TEXTURE1, s1, t1);
glMultiTexCoord2f(GL_TEXTURE2, s2, t2);
glVertex3f(...);

/* ... */
glEnd();
  

Используя массивы вершин, которые вы используете glClientActiveTexture для выбора текстурного элемента, с которым связаны следующие вызовы glTexCoordPointer .

Если вы используете шейдеры, вы также можете назначить несколько координат текстуры набору атрибутов вершины.