OpenGL3如何扩展GL_TEXTURE_RECTANGLE?

时间:2012-08-29 16:51:55

标签: c++ opengl sfml opengl-3

GL_TEXTURE_RECTANGLE以实际大小(纹理图像的分辨率)显示自身,但无论设置的分辨率如何,我都希望自己可以填充整个屏幕。

当我更改纹理坐标和glTexImage2D()以使用屏幕分辨率而不是图像大小时,我会在屏幕上看到丑陋的垃圾。我想知道如何让图像填满整个屏幕而不必为每个可能的屏幕分辨率制作单独大小的图像文件。

1 个答案:

答案 0 :(得分:3)

您不会更改纹理坐标;您更改顶点坐标。通过更改您用于渲染的矩阵,或通过更改顶点的位置。

您可以根本不使用矩阵来转换四边形的位置。在这种情况下,位置只是(-1,-1),( - 1,1),(1,1),(1,-1)。这适用于任何屏幕分辨率(假设您正确设置了视口)。