2

我敢肯定这是一个相对简单的问题,这只是我一直难以理解的一件事。

我有一个 512x512 背景,我想“无限”平铺。我四处寻找,似乎找不到很多东西,所以我想我会来这里。无论如何,这里是:

背景 http://dl.dropbox.com/u/5003139/hud/stars_far.png

所以你有它。我有一个可以在 2D 平面上移动的船精灵,这是一个自上而下的游戏。我将如何渲染此背景以使其覆盖任意大小窗口的每个像素?

4

1 回答 1

2

使用 GL_REPEAT 纹理钳制/环绕模式,[0,1] 范围之外的纹理坐标将环绕,重复纹理。所以你可以绘制一个屏幕填充四边形,但使用更大的纹理坐标。例如,使用纹理坐标 (0,0) 到 (10,10) 将在每个方向上重复纹理 10 次。为当前绑定的 2D 纹理启用重复模式

glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
于 2011-10-15T21:47:16.550 回答