| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 471 人关注过本帖
标题:[求助]请教一个位图纹理的问题
只看楼主 加入收藏
zhipeng0117
Rank: 1
等 级:新手上路
帖 子:71
专家分:0
注 册:2005-9-15
收藏
 问题点数:0 回复次数:0 
[求助]请教一个位图纹理的问题
程序中要用到位图作为OpenGL纹理,只要有其中的位图数据就行,定义了一个函数
BYTE* GetBMPBits(LPCTSTR Resource, int* nWidth, int* nHeight)
{
BITMAPFILEHEADER bmHeader;
FILE* file = fopen(Resource, "r");

fread(&bmHeader, sizeof(BITMAPFILEHEADER), 1, file);
fseek(file, sizeof(BITMAPFILEHEADER)+4, SEEK_SET);
fread(nWidth, 4, 1, file);
fread(nHeight, 4, 1, file);
int nBits = bmHeader.bfSize - bmHeader.bfOffBits;
BYTE* Bytes = new BYTE[nBits];
fseek(file, bmHeader.bfOffBits, SEEK_SET);
fread(Bytes, nBits, 1, file);
return Bytes;
}
另一个函数中调用是这样的
{。。。。。。
pBytes = GetBMPBits("res\\EARTH.BMP", &nWidth, &nHeight);
。。。。。。
delete pBytes;
}
编译运行正常,但是直接从debug目录运行exe会出错,我试着把这两个函数删掉就没事了,我想可能是Bytes或pBytes的问题,上面的函数该怎么修改呢?
搜索更多相关主题的帖子: 位图 纹理 
2006-09-13 20:06
快速回复:[求助]请教一个位图纹理的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029964 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved