• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
lizhengjin
博客园    首页    新随笔    联系   管理    订阅  订阅
opengl纹理

glDepthRange(0.0, 1.0);
 glClearDepth(1.0);
 
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glClearColor(0.0, 0.0, 0.0, 1.0);

    //glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
 
    AUX_RGBImageRec *textureImage[1];
    textureImage[0] = auxDIBImageLoadA(TEXT("D:/aa.bmp"));
  

 

    GLuint texture[1];
    glEnable(GL_TEXTURE_2D);
 glGenTextures(1, &texture[0]);
 glBindTexture(GL_TEXTURE_2D, texture[0]);

 
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);

 glTexParameteri(GL_TEXTURE, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
 glTexParameteri(GL_TEXTURE, GL_TEXTURE_MAG_FILTER,GL_LINEAR);
    //glTexImage2D(GL_TEXTURE_2D, 0, 3, textureImage[0]->sizeX, textureImage[0]->sizeY, 0, GL_RGB, GL_UNSIGNED_BYTE, textureImage[0]->data);//此函数失效,可使用gluBuild2DMipmaps()
    gluBuild2DMipmaps(GL_TEXTURE_2D, 3, textureImage[0]->sizeX, textureImage[0]->sizeY, GL_RGB, GL_UNSIGNED_BYTE, textureImage[0]->data);

 glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
 

 glBindTexture(GL_TEXTURE_2D, texture[0]);
    //glColor4f(1.0, 0.0, 0.0, 0.5);
 glBegin(GL_QUADS);
     glTexCoord2f(0.0f, 0.0f); glVertex3f(-10.0f, -10.0f,  10.0f); // 纹理和四边形的左下
  glTexCoord2f(1.0f, 0.0f); glVertex3f( 10.0f, -10.0f,  10.0f); // 纹理和四边形的右下
  glTexCoord2f(1.0f, 1.0f); glVertex3f( 10.0f,  10.0f,  10.0f); // 纹理和四边形的右上
  glTexCoord2f(0.0f, 1.0f); glVertex3f(-10.0f,  10.0f,  10.0f); // 纹理和四边形的左上
  // 后面
  
 glEnd();


 glFlush(); 
 glDisable(GL_TEXTURE_2D);
 

posted on 2009-07-22 20:42  lizhengjin  阅读(390)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3