首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

初学者请问:怎么自动生成纹理 ,

2012-01-16 
菜鸟请教:如何自动生成纹理 ,急急急本人初学openGL,在给建筑物进行纹理贴图时,纹理无法显示,代码如下:m_te

菜鸟请教:如何自动生成纹理 ,急急急
本人初学openGL,在给建筑物进行纹理贴图时,纹理无法显示,代码如下:
m_texture[0]   =   auxDIBImageLoad( "G:/DATA/texture/BricksLgMortar.bmp ");

if(!m_texture[0])
{
MessageBox( "Picture   could   not   be   loaded ");
exit(1);
}
glGenTextures(1   ,   &m_Texture);
glBindTexture(GL_TEXTURE_2D,   m_Texture);
glPixelStorei(GL_UNPACK_ALIGNMENT,   1);
glTexParameteri(GL_TEXTURE_2D,   GL_TEXTURE_WRAP_S,   m_texWrap);
glTexParameteri(GL_TEXTURE_2D,   GL_TEXTURE_WRAP_T,   m_texWrap);
glTexParameteri(GL_TEXTURE_2D,   GL_TEXTURE_MAG_FILTER,   m_texFilter);
glTexParameteri(GL_TEXTURE_2D,   GL_TEXTURE_MIN_FILTER,   m_texFilter);
glTexEnvf(GL_TEXTURE_ENV,   GL_TEXTURE_ENV_MODE,   m_texMode);//     说明纹理贴图方式  
glTexImage2D(GL_TEXTURE_2D,   0,3,   m_texture[0]-> sizeX,m_texture[0]-> sizeY,   0,GL_RGB,   GL_UNSIGNED_BYTE,   m_texture[0]-> data);

//   Build   the   mipmaps   from   the   texture  
gluBuild2DMipmaps(GL_TEXTURE_2D,   3,   m_texture[0]-> sizeX,m_texture[0]-> sizeY,   GL_RGBA,   GL_UNSIGNED_BYTE,   m_texture[0]-> data);

/////////////////////////////////////////////////////////////////////////////////
////////////自动生成纹理坐标

glEnable(GL_TEXTURE_GEN_S   );  
glTexGeni(GL_S,   GL_TEXTURE_GEN_MODE,   GL_OBJECT_LINEAR);
//glTexGeni(GL_S,GL_TEXTURE_ENV_MODE,GL_NORAML_MAP);
glTexGenfv(GL_S,   GL_OBJECT_PLANE,   s_vector);
glDisable(GL_TEXTURE_GEN_S);

glEnable(GL_TEXTURE_GEN_T   );
glTexGeni(GL_T,   GL_TEXTURE_GEN_MODE,   GL_OBJECT_LINEAR);
glTexGenfv(GL_T,   GL_OBJECT_PLANE,   t_vector);
glDisable(GL_TEXTURE_GEN_T);
请高手指点!

[解决办法]
glEnable(GL_TEXTURE_GEN_S);// 使用自动生成纹理
glEnable(GL_TEXTURE_GEN_T);
这两条语句放在一起看看
[解决办法]
http://www.owlei.com/DancingWind/

热点排行