纹理图片显示倒了

下午,在尝试使用OpenGL显示BMP图片时遇到一个问题:加载的BMP图片在三维下显示倒了。刚开始怀疑是纹理坐标赋反了。仔细检查纹理坐标和顶点坐标的对应,如下代码所示,没有发现错误。

 

 

那么就只能怀疑到BMP加载上了。我用一个TBitmap类从一个BMP文件中加载数据,如下所示,也非常简单,不该有问题。

 

难道是BMP的存储方式和glTexImage2D要求的数据格式不同。忙上网搜了一下,果然BMP在存储时和我们想象的不一样,记录顺序是在扫描行内是从左到右,扫描行之间是从下到上。因此上面那段代码只需把for...to改为for...downto即可。

关于BMP的详细格式说明可以参见:http://blog.csdn.net/sjzlxd/archive/2009/02/22/3923907.aspx

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值