关于gluBuild2DMipmaps和glTexSubImage2D 我现在是用gluBuild2DMipmaps产生了 纹理数据,用glTexSubImage2D替换以后没有变化 就是说 替换以后还是以前的纹理数据,请教是怎么会事呢 谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 glClearColor(0.0f,0.0f,0.0f,0.0f); glShadeModel(GL_SMOOTH); glClearDepth(1.0f) ; glEnable(GL_DEPTH_TEST); glDepthFunc(GL_LEQUAL); glEnable(GL_CULL_FACE); glFrontFace(GL_CCW); glEnable(GL_TEXTURE_2D); glGenTextures(5,texture); for(int i=0;i<5;i++) { pRGB1=LoadBitmapFile(szfileName[i],&bih); if(!pRGB1) return; glBindTexture(GL_TEXTURE_2D,texture[i]); gluBuild2DMipmaps(GL_TEXTURE_2D, GL_RGB, bih.biWidth, bih.biHeight, GL_RGB, GL_UNSIGNED_BYTE,pRGB1); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_NEAREST); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_NEAREST); //glTexParameteri(GL_TEXTURE_2D,GL_GENERATE_MIPMAP,GL_TRUE); glTexEnvi(GL_TEXTURE_ENV,GL_TEXTURE_ENV_MODE,GL_MODULATE); glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); } int i=0; int j=0; HRESULT hr = pGrab -> GetCurrentBuffer( &n, (long *)pRGB ); glBindTexture(GL_TEXTURE_2D,texture[0]); glTexSubImage2D (GL_TEXTURE_2D, 0, 0, 0, bih1.biWidth, bih1.biHeight, GL_RGB, GL_UNSIGNED_BYTE, pRGB); glPushMatrix(); glBegin(GL_QUADS); glTexCoord2f(0.0f,0.0f);glVertex2f(-windowWidth,-windowHeight); glTexCoord2f(1.0f,0.0f);glVertex2f(windowWidth,-windowHeight); glTexCoord2f(1.0f,1.0f);glVertex2f(windowWidth,windowHeight); glTexCoord2f(0.0f,1.0f);glVertex2f(-windowWidth,windowHeight); glEnd(); glPopMatrix(); for(i=0;i<20;i++) { j++; if(j>4) j=1; glBindTexture(GL_TEXTURE_2D,texture[j]); tex1[i].Rende(1.0f,-370.0f+80.0*i,height,angle); } height-=1.0; if(height<-300.0f) height=300.0f; angle+=1; if(angle>360.0f) angle=0.0f; gluBuild2DMipmaps改成glTexImage2D,行吗? MFC的edit control 如果只限制输入数字跟#,*键? 所有窗口最小化后,当前活动窗口是不是就是桌面窗口?怎么样取得他的句柄呢? 求助 Regsvr32注册成功 但在注册表CLSID里没有发现该键值 能不能将多个图片文件存入一个文本文件之后直接从文件取出图片并显示在对话框上? 在vc中怎么实现图像绕任意轴的旋转啊?急!!在线等 关于GDI+ 问一个函数名 在线等待…… 快来看看,会者不难,送分题。 如何捕捉USB接口插拔事件? MFC中socket接收程序卡死的问题? GDI不用屏蔽图怎样透明贴图? 视屏解码插件是如何同播放器关联起来的?
glShadeModel(GL_SMOOTH);
glClearDepth(1.0f) ;
glEnable(GL_DEPTH_TEST);
glDepthFunc(GL_LEQUAL);
glEnable(GL_CULL_FACE);
glFrontFace(GL_CCW);
glEnable(GL_TEXTURE_2D); glGenTextures(5,texture);
for(int i=0;i<5;i++)
{
pRGB1=LoadBitmapFile(szfileName[i],&bih); if(!pRGB1)
return; glBindTexture(GL_TEXTURE_2D,texture[i]); gluBuild2DMipmaps(GL_TEXTURE_2D, GL_RGB, bih.biWidth, bih.biHeight, GL_RGB, GL_UNSIGNED_BYTE,pRGB1);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_NEAREST);
//glTexParameteri(GL_TEXTURE_2D,GL_GENERATE_MIPMAP,GL_TRUE);
glTexEnvi(GL_TEXTURE_ENV,GL_TEXTURE_ENV_MODE,GL_MODULATE);
glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);
}
int i=0;
int j=0;
HRESULT hr = pGrab -> GetCurrentBuffer( &n, (long *)pRGB );
glBindTexture(GL_TEXTURE_2D,texture[0]);
glTexSubImage2D (GL_TEXTURE_2D, 0, 0, 0, bih1.biWidth, bih1.biHeight, GL_RGB, GL_UNSIGNED_BYTE, pRGB); glPushMatrix();
glBegin(GL_QUADS);
glTexCoord2f(0.0f,0.0f);glVertex2f(-windowWidth,-windowHeight);
glTexCoord2f(1.0f,0.0f);glVertex2f(windowWidth,-windowHeight);
glTexCoord2f(1.0f,1.0f);glVertex2f(windowWidth,windowHeight);
glTexCoord2f(0.0f,1.0f);glVertex2f(-windowWidth,windowHeight);
glEnd();
glPopMatrix(); for(i=0;i<20;i++)
{
j++;
if(j>4)
j=1;
glBindTexture(GL_TEXTURE_2D,texture[j]); tex1[i].Rende(1.0f,-370.0f+80.0*i,height,angle);
} height-=1.0;
if(height<-300.0f)
height=300.0f;
angle+=1;
if(angle>360.0f)
angle=0.0f;