http://en.wikipedia.org/wiki/Mipmap
这个是我这次在做安卓时遇到的问题
因为GPU的限制,纹理创建时的宽或高需为2的次方
就是1,2,4,8,16,32,64,128.......
图的宽高为31*52,直接作为纹理的宽高
在某些GPU是可以支援非2次方的宽高, 所以没有问题
但还是有很多GPU是不支援的
若是GPU不支援非2次方宽高,则glTexImage2D会产生GL_INVALID_VALUE(1281)的错误
所以就直接将所有的纹理创建为2次方的宽高
就解决了问题
实际实践手法是这样
1.读图
2.读取图的宽高
3.找出适合的纹理宽高(如5*9=>8*16, 31*55=>32*64)
4.用纹理宽高创建缓存
最后再用glTexImage2D创建纹理
这样就在绝大部分Android机子上能运行了

更多相关文章

  1. 《Android之大话设计模式》--设计模式 创建型模式 第一章:简单工
  2. [安卓教学] 创建你的第一个安卓应用 - 课程介绍
  3. Android:创建可穿戴应用 - 安装和依赖管理
  4. android ContentProvider 使用实例
  5. android new socket异常
  6. 如何创建一个baseactivity
  7. Android:Creating Your Own Spelling Checker Service(创建拼写检
  8. 如何创建一个安卓项目
  9. 监听Home键和返回键

随机推荐

  1. android project 文件夹
  2. android -- 多级目录创建
  3. Android(安卓)按键消息path
  4. 使用Android系统自带的icon图标
  5. android [1_ManagingProjects]
  6. Android requires compiler compliance l
  7. 快手Android
  8. Android 知识总结
  9. android 实现button的背景改变
  10. 史上最全selector和shape使用方法 Androi