当玩家在opengl中向上移动时,如何创建不断更新的纹理墙?

时间:2010-08-24 10:51:12

标签: c++ opengl graphics

我想知道如何在opengl中创建墙,并且它在向下的屏幕上不断出现。我能够通过GL_QUADS用纹理映射构造墙。但不知道如何在玩家爬升时动态生成它。

2 个答案:

答案 0 :(得分:1)

你有几种可能性。

  • 创建一个四边形,例如一米。渲染100次,从地板(playerPos.z)到前方100米。重复对面墙
  • 创建一个100米的四边形。将四边形的U纹理坐标设置为playerPos.z和playerPos.z + 100.将纹理贴图设置为GL_REPEAT。

第二个更快(仅2个四边形),但不允许您为墙的不同部分选择不同的纹理。

答案 1 :(得分:0)

您不必制作“动态墙”(例如,每帧更改glVertex *值)。只需使用glTranslatef功能更改相机位置(模型视图矩阵)。

(我希望我能正确理解你的问题)