纹理贴图贴上后为什么是反的?跪求高手解决
解决方案 »
- 用Win API实现游戏《是男人就下100层》(游戏入门&追爱)
- 如何获得对话框的句柄
- 请问CSpinButtonCtrl 如何滚动小数?
- 如何获得当前视图区域大小
- 怎样设置一个CEdit的控件的背景色(如红色)?
- 如何将《CHM电子图书》链接到自己编的程序当中?
- 如何控制edit控件中的文字为选中状态,也就是文字是蓝底白字,被选中?
- 高手快来!!!!
- 在编程中 如何调用默认邮件程序(outlook express)发送新邮件,并自动把指定的文件附加上去?
- 怎样在Win2000下修改注册表
- 在VS2005里,如何用picture control控件 动态显示图片
- 关于win7 程序没有正常运行,建议以推荐方式运行
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL);
glEnable(GL_TEXTURE_2D);
glShadeModel(GL_SMOOTH);//寻择地一个纹理进行贴图
if(m_Texture[0].GetData() != NULL)
glTexImage2D(GL_TEXTURE_2D,0,3,
m_Texture[0].GetWidth(),
m_Texture[0].GetHeight(),0,
GL_RGB,GL_UNSIGNED_BYTE,
m_Texture[0].GetData());
glBegin(GL_POLYGON);
//glNormal3d(0.0,0.0,1.0);
glTexCoord2f(0.0, 0.0); glVertex3d(-0.5f, -0.5f, 0.5f);
glTexCoord2f(1.0, 0.0); glVertex3d(0.5f, -0.5f, 0.5f);
glTexCoord2f(1.0, 1.0); glVertex3d( 0.5f, 0.5f, 0.5f);
glTexCoord2f(0.0, 1.0); glVertex3d(-0.5f, 0.5f, 0.5f);
glEnd();
//选择第二个纹理进行贴图
if(m_Texture[1].GetData() != NULL)
glTexImage2D(GL_TEXTURE_2D,0,3,
m_Texture[1].GetWidth(),
m_Texture[1].GetHeight(),0,
GL_RGB,GL_UNSIGNED_BYTE,
m_Texture[1].GetData());
glBegin(GL_POLYGON);
//glNormal3d(0.0,0.0,-1.0);
glTexCoord2f(1.0, 0.0); glVertex3d(-0.5f, -0.5f, -0.5f);
glTexCoord2f(1.0, 1.0); glVertex3d(-0.5f, 0.5f, -0.5f);
glTexCoord2f(0.0, 1.0); glVertex3d(0.5f, 0.5f, -0.5f);
glTexCoord2f(0.0, 0.0); glVertex3d(0.5f, -0.5f, -0.5f);
glEnd();//选择第三个纹理进行贴图if(m_Texture[2].GetData() != NULL)
glTexImage2D(GL_TEXTURE_2D,0,3,
m_Texture[2].GetWidth(),
m_Texture[2].GetHeight(),0,
GL_RGB,GL_UNSIGNED_BYTE,
m_Texture[2].GetData()); glBegin(GL_POLYGON);
//glNormal3d(1.0,0.0,0.0);
glTexCoord2f(0.0, 1.0); glVertex3d(-0.5f, 0.5f, -0.5f);
glTexCoord2f(0.0, 0.0); glVertex3d(-0.5f, 0.5f, 0.5f);
glTexCoord2f(1.0, 0.0); glVertex3d(0.5f, 0.5f, 0.5f);
glTexCoord2f(1.0, 1.0); glVertex3d(0.5f, 0.5f, -0.5f);
glEnd();//选择第四个纹理进行贴图
if(m_Texture[3].GetData() != NULL)
glTexImage2D(GL_TEXTURE_2D,0,3,
m_Texture[3].GetWidth(),
m_Texture[3].GetHeight(),0,
GL_RGB,GL_UNSIGNED_BYTE,
m_Texture[3].GetData()); glBegin(GL_POLYGON);
//glNormal3d(-1.0,0.0,0.0);
glTexCoord2f(1.0, 1.0); glVertex3d(-0.5f, -0.5f, -0.5f);;
glTexCoord2f(0.0, 1.0); glVertex3d(0.5f, -0.5f, -0.5f);
glTexCoord2f(0.0, 0.0); glVertex3d(0.5f, -0.5f, 0.5f);
glTexCoord2f(1.0, 0.0); glVertex3d(-0.5f, -0.5f, 0.5f);
glEnd();//选择第五个纹理进行贴图
if(m_Texture[4].GetData() != NULL)
glTexImage2D(GL_TEXTURE_2D,0,3,
m_Texture[4].GetWidth(),
m_Texture[4].GetHeight(),0,
GL_RGB,GL_UNSIGNED_BYTE,
m_Texture[4].GetData());
glBegin(GL_POLYGON);
//glNormal3d(0.0,-1.0,0.0);
glTexCoord2f(1.0, 0.0);glVertex3d(0.5f, -0.5f, -0.5f);
glTexCoord2f(1.0, 1.0);glVertex3d(0.5f, 0.5f, -0.5f);
glTexCoord2f(0.0, 1.0); glVertex3d(0.5f, 0.5f, 0.5f);
glTexCoord2f(0.0, 0.0); glVertex3d(0.5f, -0.5f, 0.5f);
glEnd();//选择第六个纹理进行贴图
if(m_Texture[5].GetData() != NULL)
glTexImage2D(GL_TEXTURE_2D,0,3,
m_Texture[5].GetWidth(),
m_Texture[5].GetHeight(),0,
GL_RGB,GL_UNSIGNED_BYTE,
m_Texture[5].GetData());
glBegin(GL_POLYGON);
//glNormal3d(0.0,1.0,0.0);
glTexCoord2f(0.0, 0.0); glVertex3d(-0.5f, -0.5f, -0.5f);
glTexCoord2f(1.0, 0.0); glVertex3d(-0.5f, -0.5f, 0.5f);
glTexCoord2f(1.0, 1.0); glVertex3d(-0.5f, 0.5f, 0.5f);
glTexCoord2f(0.0, 1.0); glVertex3d(-0.5f, 0.5f, -0.5f);
glEnd();