使用自动生成Mipmap时遇到的一些问题
来源:互联网 发布:sublime知乎 编辑:程序博客网 时间:2024/05/21 06:59
给纹理添加一个局部更新的功能,在用OpenGL实现时候找到了glTexSubImage2D这个函数
然后问题就开始了
首先是使用glTexSubImage2D时候需要指定mipmap纹理层,而mipmap的生成我目前使用了gluBuild2DMipmaps函数,于是在我尝试修改多层mipmap时发现:居然每一层的修改使用的是绝对坐标,而不是相对坐标
举个例子,如果修改了(16,16)~(32,32)这个范围的像素,那么每当采用更小一级的mipmap时候,所修改的纹理就会向+x和+y方向移动并扩大一倍,这是由于mipmap本身的原理决定的。所以这种方法不能采用。
在gamedev上看到说2000年左右时候调用gluBuild2DMipmaps还可以,现在就不需要这样做了
http://www.opengl.org/wiki/Texture_Mapping#How_to_create_a_texture
在这个链接上提示了一种方法使用gpu生成mipmap
这个方法需要硬件支持OpenGL 1.4以上(所幸我的915gm还可以支持^^)
mipmap本身没问题了,然后我遇到了另一个问题:
原先使用的gluBuild2DMipmaps其实还有一个特殊功能,就是将非2次幂的纹理缩放到2次幂
结果现在在915gm上面跑的时候,非2次幂纹理都成了白色
在9600gt上面跑完全没有问题,看来这个是硬件支持的问题,寻找解决方案中……
原来以前的错误一直被gluBuild2DMipmaps函数给掩盖了
- 使用自动生成Mipmap时遇到的一些问题
- 使用thinkphp时遇到的一些问题
- dwz使用时遇到的一些问题
- DialogFragment使用时遇到的一些问题
- 使用ObjectAnimator时遇到的一些问题
- 使用thymeleaf时遇到的一些问题
- 使用numpy时遇到的一些问题
- iOS xib自动布局时遇到的一些问题
- 关于用c生成的dll在使用其他供应商的工具创建可执行模块时遇到的一些问题
- 使用POI生成Excel文件,可以自动调整excel列宽遇到的问题及解决
- idea使用generator插件自动生成代码工具遇到的问题
- 关于mipmap的一些小记
- 使用desinger时遇到的一些问题的处理分享
- 使用VS2010时遇到的一些小问题的解决方案
- kotlin的一些学习和使用时遇到的问题
- 使用GridView时遇到的一些小问题及解决方法
- 学习使用solr时遇到的一些问题,记录
- 使用wcscat_s函数时遇到的一些问题
- linux下释放cache内存
- Pku acm 2752 Seek the Name, Seek the Fame数据结构题目解题报告(二十)----kmp算法
- Pku acm 1961 Period数据结构题目解题报告(十九)----kmp算法
- 应用OSCache提升J2EE系统运行性能
- 月薪三万的面试题
- 使用自动生成Mipmap时遇到的一些问题
- Pku acm 2406 Power Strings数据结构题目解题报告(十八)----kmp算法
- 数据结构笔记3 线性表的链式表示
- WSUS(Windows Server Update Services)注册表配置
- C#中解决zedgraph右键菜单的中文问题
- 魅力资中行(图)
- 如何修改SQL Server 2000身份验证模式和系统管理员Sa的登录密码
- 匈牙利算法求二分图的最大匹配----杭电ACM
- ADO.NET 连接数据库字符串(Oracle、SqlServer、Access、ODBC)