【问题标题】:draw opengl texture at full screen全屏绘制opengl纹理
【发布时间】:2013-12-20 15:13:43
【问题描述】:

我想全屏绘制opengl纹理。

(纹理:128x128 ===> 设备屏幕:320x480)

下面的代码效果很好,但是纹理很小。

我只能使用 glFrustumf 函数(不是 glOrthof 函数)。

如何以全屏尺寸绘制纹理?

// this is android source code
float ratio = (float) screenWidth / screenHeight;
gl.glMatrixMode(GL10.GL_PROJECTION);
gl.glLoadIdentity();
gl.glFrustumf(-ratio, ratio, -1, 1, 1, 10);

GLU.gluLookAt(gl, 0.0f, 0.0f, -2.5f, // eye
 0.0f, 0.0f, 0.0f, // center
 0.0f, 1.0f, 0.0f); // up

// draw blah blah

【问题讨论】:

    标签: android opengl-es textures


    【解决方案1】:

    为什么只能使用glFrustum?切换到glOrtho 绘制背景,然后切换到glFrustum 进行常规绘制将是规范的解决方案。

    顺便说一句:gluLookAt 必须发生在模型视图矩阵中,而不是像现在这样在投影矩阵中发生。就目前而言,您的代码已损坏,如果您是我的 OpenGL 课程之一的学生,我会为这个主要错误给您负分。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多