OpenGL:设置多个纹理坐标

OpenGL:设置多个纹理坐标,opengl,glsl,textures,Opengl,Glsl,Textures,如何为一个顶点设置多个纹理坐标?在即时模式下,您可以使用glMultiTexCoord进行以下操作: 代码示例 glBegin(GL_TRIANGLES); glMultiTexCoord2f(GL_TEXTURE0, s0, t0); glMultiTexCoord2f(GL_TEXTURE1, s1, t1); glMultiTexCoord2f(GL_TEXTURE2, s2, t2); glVertex3f(...); /* ... */ glEnd(); 使用顶点数组,您可以使用g

如何为一个顶点设置多个纹理坐标?

在即时模式下,您可以使用
glMultiTexCoord
进行以下操作:

代码示例

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

/* ... */
glEnd();
使用顶点数组,您可以使用
glClientActiveTexture
选择纹理单元,以下对
glTexCoordPointer
的调用与此相关


如果您使用的是着色器,您还可以为一组顶点属性指定多个纹理坐标。

在即时模式下,您可以使用
glMultiTexCoord
来实现以下目的:

代码示例

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

/* ... */
glEnd();
使用顶点数组,您可以使用
glClientActiveTexture
选择纹理单元,以下对
glTexCoordPointer
的调用与此相关

如果使用着色器,还可以为一组顶点属性指定多个纹理坐标