关于OPENGL中的MIPMAP
来源:互联网 发布:伪基站 知乎 编辑:程序博客网 时间:2024/05/01 15:38
当MIPMAP纹理都是自己创建的时候,设置的步骤如下
假设mipmap都存储在pic数组中
- glGenTextures(1, &texid);
- glBindTexture(GL_TEXTURE_2D, texid);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER,
- GL_NEAREST_MIPMAP_NEAREST);
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 32, 32, 0,
- GL_RGBA, GL_UNSIGNED_BYTE, pic[0]);
- glTexImage2D(GL_TEXTURE_2D, 1, GL_RGBA, 16, 16, 0,
- GL_RGBA, GL_UNSIGNED_BYTE, pic[1]);
- glTexImage2D(GL_TEXTURE_2D, 2, GL_RGBA, 8, 8, 0,
- GL_RGBA, GL_UNSIGNED_BYTE, pic[2]);
- glTexImage2D(GL_TEXTURE_2D, 3, GL_RGBA, 4, 4, 0,
- GL_RGBA, GL_UNSIGNED_BYTE, pic[3]);
- glTexImage2D(GL_TEXTURE_2D, 4, GL_RGBA, 2, 2, 0,
- GL_RGBA, GL_UNSIGNED_BYTE, pic[4]);
- glTexImage2D(GL_TEXTURE_2D, 5, GL_RGBA, 1, 1, 0,
- GL_RGBA, GL_UNSIGNED_BYTE, pic[5]);
- glBindTexture(GL_TEXTURE_2D, 0);
这里的情况是mipmap的level一直到最小的 1 x 1
但是如果我们不想要这么高的level,比如只到4 x 4为止,那么还需要在 glTexImage2D 前面加上一句:
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, 3);
32 x 32 的纹理 level 为0, 那么 到 4 x 4为止的话, MAX_LEVEL 就应该设置为3, 注意这里如果MAX_LEVEL的设置大于实际提供的texture level,渲染结果也是会出错的。
当MIPMAP让OPENGL自动创建的时候
- 关于OPENGL中的MIPMAP
- OpenGL-纹理映射Mipmap
- opengl mipmap and box filter
- 关于drawable和mipmap
- OpenGL ES2.0 生成Mipmap纹理
- 关于mipmap的一些小记
- Mipmap
- mipmap
- Mipmap
- MipMap
- 关于MATLAB 中的 opengl错误
- Android Studio中的mipmap和drawable
- Opengl ES2.0之mipmap纹理技术小结
- 17、OpenGL ES2.0 生成Mipmap纹理(2012-08-02)
- 《高效学习OpenGL》 之 mipmap glGenerateMipmap(),gluBuild2DMipmaps(),gluBuild2DMipmapLevels()
- OpenGL超级宝典笔记——纹理映射Mipmap
- OpenGL ES2.0 生成Mipmap纹理(2012-08-02)
- 【C++ OpenGL ES 2.0编程笔记】5: mipmap
- 关于userInteractionEnabled的属性的理解
- hdu 1049 数学公式推导
- CFBundleVersion与CFBundleShortVersionString,上架注意事项
- 【Android开发学习41】Android 将文字转为为图片drawText
- fatal error C1853
- 关于OPENGL中的MIPMAP
- 先用CFileDialog后再用CFileFind则无法找到文件
- phpunitについて
- dodo:人脸识别方法个人见解 (zz)
- 五种你必须彻底了解的CSS选择器
- 字符串匹配【Boyer-Moore算法】
- windows+sphinx+php 安装+配置+使用
- 网络字节转换函数--IP地址转换--字符->int_32
- 移植uboot-1.3.4到mini2440(256M NAND)