[求助]OpenGL窗口背景贴图问题
发现网上很少关于OpenGL背景贴图的资料,大部分都是在一个小多边形上面贴图。自己于是就按照一般纹理贴图的规则来试试在背景贴图。
我本来是想贴一幅图作为程序的背景,而且希望背景图片会随着窗口大小而变化。虽然贴上去的纹理是填充了整个窗口,但是填充整个窗口的背景,只是纹理的一部分而已,也就是说我的纹理放大了很多倍。不知道为什么会这样。
一开始的代码大概是这样的:/*width、height分别是窗口的宽度和高度,一开始大概是600多和400多*/
glBegin(GL_QUADS); glTexCoord2f(0.0f, 0.0f);glVertex3f(-width / 2, -height/ 2, -7.0f); glTexCoord2f(1.0f, 0.0f);glVertex3f( width/ 2 , -height/ 2, -7.0f); glTexCoord2f(1.0f, 1.0f);glVertex3f( width/ 2, height/ 2, -7.0f); glTexCoord2f(0.0f, 1.0f);glVertex3f(-width / 2, height/ 2, -7.0f); glEnd();
glBegin(GL_QUADS); glTexCoord2f(0.0f, 0.0f); glVertex3f(-6.0f, -6.0f, -6.0f); glTexCoord2f(1.0f, 0.0f); glVertex3f( 6.0f , -6.0f, -6.0f); glTexCoord2f(1.0f, 1.0f); glVertex3f( 6.0f, 6.0f, -6.0f); glTexCoord2f(0.0f, 1.0f); glVertex3f(-6.0f, 6.0f, -6.0f); glEnd();