【发布时间】:2014-05-27 14:50:57
【问题描述】:
我想知道在 OpenGL 中使用纹理时如何减少图形内存的消耗。我的代码:
glGenTextures(1,&textura);
glBindTexture(GL_TEXTURE_RECTANGLE_ARB,textura);
glTexParameteri(GL_TEXTURE_RECTANGLE_ARB,GL_TEXTURE_MIN_FILTER,GL_NEAREST);
glTexParameteri(GL_TEXTURE_RECTANGLE_ARB,GL_TEXTURE_MAG_FILTER,GL_NEAREST);
glTexImage2D(GL_TEXTURE_RECTANGLE_ARB,0,GL_COMPRESSED_RGBA_ARB,ilancho,ilalto,0,GL_RGBA,GL_UNSIGNED_BYTE,ildata);
//MAIN LOOP
glEnable(GL_TEXTURE_RECTANGLE_ARB);
glBindTexture(GL_TEXTURE_RECTANGLE_ARB,textura);
glLoadIdentity();
glTranslatef(320.0,240.0,0.0);
glBegin(GL_TRIANGLE_FAN);
glTexCoord2d(0.0,0.0);
glVertex2f(-320.0, 240.0);
glTexCoord2d(0.0,480.0);
glVertex2f(-320.0,-240.0);
glTexCoord2d(640.0,480.0);
glVertex2f( 320.0,-240.0);
glTexCoord2d(640.0,0.0);
glVertex2f( 320.0, 240.0);
glEnd();
glBindTexture(GL_TEXTURE_RECTANGLE_ARB,0);
glDisable(GL_TEXTURE_RECTANGLE_ARB);
我使用 RivaTuner 来检查图形内存的消耗,似乎是一样的,有或没有压缩。
我做错了什么?
我有一个 NVIDIA 显卡 geforce 6200 512mb ddr2。
【问题讨论】:
标签: opengl