06-将纹理坐标载入缓冲区
5.5 将纹理坐标载入缓冲区
我们可以用与前面加载顶点相似的方式将纹理坐标加载到VBO中。在setupVertices()中,我们添加以下纹理坐标值声明:
float pyrTexCoords[36] =
{ 0.0f, 0.0f, 1.0f, 0.0f, 0.5f, 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.5f, 1.0f, // 前侧面、右侧面
0.0f, 0.0f, 1.0f, 0.0f, 0.5f, 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.5f, 1.0f, // 后侧面、左侧面
0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 1.0f, 1.0f, 1.0f, 0.0f, 0.0f, 1.0f, 0.0f }; // 底面的两个三角形
然后,在创建至少两个VBO(一个用于顶点,一个用于纹理坐标)之后,我们添加以下代码行以将纹理坐标加载到VBO #1中:
glBindBuffer(GL_ARRAY_BUFFER, vbo[1]);
glBufferData(GL_ARRAY_BUFFER, sizeof(pyrTexCoords), pyrTexCoords, GL_STATIC_DRAW);