OpenGL从图片文件加载Texture时的上下颠倒问题
来源:互联网 发布:生活启示录 知乎 编辑:程序博客网 时间:2024/04/28 22:49
在NeHe的教程6中,从BMP文件加载Texture时直接使用了auxDIBImageLoad(Filename);,而在JOGL和Android版本的代码中,你可以看到在使用了BufferedImage或者Bitmap类加载完图片文件后,都做了一个颠倒图片上下的操作。原因很简单,gluBuild2DMipmaps接收的图像数据是原始的BMP文件数据,在BMP文件中,是从图片的最后一行开始存储的,而BufferedImage或者Bitmap加载图片后的数据是从第一行开始存储的,所以需要颠倒一下。另外还要注意glTexImage2D需要指定数据中RGB三个分量的排列顺序。
以下是网上找到的一个Loading a BMP without AuxDIBImageLoad()例程,可以很明显看到BMP文件数据被直接送给了gluBuild2DMipmaps,验证了前面的推断。
- OpenGL从图片文件加载Texture时的上下颠倒问题
- OpenGL ES (一.绘制图片上下颠倒)
- iOS开发与OpenGL ES相关问题整理(2)- 绘制图片上下颠倒
- iOS开发与OpenGL ES相关问题整理(2)- 绘制图片上下颠倒
- iOS开发与OpenGL ES 绘制图片上下颠倒
- SDL与OpenGL配合使用时,OpenGL的纹理的UV坐标是上下颠倒的
- SDL与OpenGL配合使用时,OpenGL的纹理的UV坐标是上下颠倒的
- OpenGL纹理上下颠倒翻转的三种解决办法
- OpenGL纹理上下颠倒翻转的三种解决办法
- OpenGL纹理上下颠倒翻转的三种解决办法
- iOS 绘制图片上下颠倒
- 位图保存时上下颠倒?
- 使用CGContextDrawImage绘制图片上下颠倒
- ios-绘图之图片上下颠倒
- 使用CGContextDrawImage绘制图片上下颠倒解决方法
- 上传图片颠倒问题
- texture packer 处理图片空白的问题
- opengl中解决红蓝色颠倒的问题
- 构建基于 J2ME 的安全 SOAP 客户机
- bootmem_init分析(Bootmem Allocator)
- Mysql的使用上的一点细节记录
- VS2008 dll 项目不能生成*.lib文件
- 2010年最佳开源企业应用软件
- OpenGL从图片文件加载Texture时的上下颠倒问题
- 函数的重载和重写
- 地球上的星星
- 智能指针(auto_ptr 和 shared_ptr)
- 本博客的用处
- 关于MSSQL2000导入导出的一些心得
- YLMF OS linux 的系统 root 用户光
- 关于FlyTreeView
- 解决win7下面图标显示不正常的问题