首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LUMINANCE_ALPHA的缩放问题

LUMINANCE_ALPHA的缩放问题
EN

Stack Overflow用户
提问于 2013-01-17 23:48:47
回答 1查看 181关注 0票数 2

我目前正在扩展我的OpenGL-UI系统,为此我重写了字体部分,并且在使用mipmapping时遇到了一个问题。因为图片上说的话不止几千个字:

正如您可以看到字体的透明度正在消失(文本应该显示8次!),这种情况只有在使用LUMINANCE_ALPHA-textures时才会发生。加载纹理的代码基本相同,但它们使用的格式不同,这是LUMINANCE_ALPHA使用的:

TexImageInternalFormat.LUMINANCE_ALPHA,TexImageFormat.LUMINANCE_ALPHA,TexImagePixelType.UNSIGNED_BYTE

启用线性滤波,并将钳位设置为GL_CLAMP_TO_EDGE。对我来说,这似乎是一个mipmapping的问题,但我尝试了很多不同的设置,它是行不通的,正如我已经说过,RGBA纹理工作没有任何问题。该应用程序还运行在iOS上,因此与RGBA相比,使用LUMINANCE_ALPHA-texture可以节省大量内存。

是什么导致了这一切,我该如何解决呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-18 19:12:58

事实证明,ImageFormat设置是错误的:

代码语言:javascript
复制
LA8 = new ImageFormat("LA8", TexImageInternalFormat.LUMINANCE_ALPHA, TexImageFormat.LUMINANCE_ALPHA, TexImagePixelType.UNSIGNED_BYTE, 4);

最后一个数字表示这种格式的每个像素的字节数,如果是LUMINANCE_ALPHA,则应为2。PVR读取器不会抱怨丢失的图像数据,也不会抛出任何异常。将4改为2解决了这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14390230

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档