游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4008|回复: 4

关于地图拼贴图的一个问题,急!!!

[复制链接]

1

主题

2

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2005-8-2 10:39:00 | 显示全部楼层 |阅读模式
唐明理老师:
      我分别买了你的两本大作“学VC编游戏”和“学OpenGL编3D游戏”,但有一个问题不知道是你书中没讲还是我理解愚钝。
即: 两本书中似乎提出的地图拼贴图都是用相同的一图形反复拼贴,这样产生的地图仔细一看都是块图,十分不舒服。
      我现在企图将一大块位图分割成若干小图,然后不同部位贴不同的小图,具体方法如下:
bool baiscobj:oadT8(char *filename, GLuint &texture)//调8位贴图
{        AUX_RGBImageRec *pImage = NULL;
        pImage = auxDIBImageLoad(filename);         // 装入位图       
        if(pImage == NULL)        return false;         // 位图没装入返回错误

        //--我添加的切图程序------------------------------
        const int CutX = 16,CutY = 16;   //切图大小
        unsigned char pCutImage[CutX*CutY] = {0};
        int i,j,m;
        m = 0;
        for(i=0; i<CutX; i++)
        {
           for(j=0; j<CutY; j++)
           {
               *(pCutImage + m) = *( (pImage->data) + i*(pImage->sizeX) + j );
                m++;
           }
        }
        //--我添加的切图程序完------------------------------

        glGenTextures(1, &texture);                  // 生成贴图(纹理)
        glBindTexture    (GL_TEXTURE_2D,texture);// 捆绑贴图(纹理)

        gluBuild2DMipmaps(GL_TEXTURE_2D,    4,   
          CutX,//pImage->sizeX,     // 图形宽
          CutY,//pImage->sizeY,     // 图形高
          GL_RGB,                   // 红绿蓝顺序
          GL_UNSIGNED_BYTE,         // 图像的数据类型是字节
          pCutImage//pImage->data   // 指定贴图(纹理)数据
         );
        free(pImage->data);             // 释放位图数据占据的内存资源
        free(pImage);       
        return true;                         // 返回成功
}
可是结果是纹理乱了。

请问究竟该怎样解决?
谢谢。

1

主题

2

帖子

0

积分

新手上路

Rank: 1

积分
0
 楼主| 发表于 2005-8-8 11:33:00 | 显示全部楼层

Re:关于地图拼贴图的一个问题,急!!!

问题解决了,今天太忙,待天告知大家,我自己解决的.

1

主题

15

帖子

15

积分

新手上路

Rank: 1

积分
15
QQ
发表于 2006-5-30 12:07:00 | 显示全部楼层

Re:关于地图拼贴图的一个问题,急!!!

兄弟,我现在也急到用呢
快点把正确的发出来嘛

2

主题

95

帖子

99

积分

注册会员

Rank: 2

积分
99
发表于 2006-6-4 22:34:00 | 显示全部楼层

Re:关于地图拼贴图的一个问题,急!!!

相信是画图方面的问题,不是程序上的问题

1

主题

11

帖子

11

积分

新手上路

Rank: 1

积分
11
发表于 2006-7-11 11:19:00 | 显示全部楼层

Re:关于地图拼贴图的一个问题,急!!!

不明白,以后来看
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-24 21:48

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表