首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >替代GL_LUMINANCE、GL_LUMINANCE_ALPHA​

替代GL_LUMINANCE、GL_LUMINANCE_ALPHA​
EN

Stack Overflow用户
提问于 2013-11-20 00:27:44
回答 1查看 9.1K关注 0票数 13

对于内存效率高的实时嵌入式图形,我通常在需要无损灰度图像时使用GL_LUMINANCE编码的DDS图像(或在需要alpha图像时使用GL_LUMINANCE_ALPHA )。然而,我刚刚发现这些文件格式是deprecated in OpenGL 3,并且从3.1中删除了。

对于每像素8位或更低(或当涉及alpha时为16bpp )的无损灰度数据,是否有替代的图像格式?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-20 00:34:03

如果您在该维基页面上向上滚动一点,您将看到1通道和2通道图像的GL_RED/GL_R*GL_RG*

glTexImage2D()

GL_RED:每个元素都是一个单独的红色组件。GL将其转换为浮点数并将其组合为RGBA元素,方法是将绿色和蓝色附加为0,将alpha附加为1...

GL_RG:每个元素都是一个红色/绿色的双精度值。GL将其转换为浮点数,并通过附加0表示蓝色,1表示alpha...将其组装为RGBA元素。

As GuyRT pointed out如果您有EXT_texture_swizzle/ARB_texture_swizzle和/或OpenGL版本>= 3.3,则可以使用swizzle mask展开/重新排列纹理颜色组件。

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

https://stackoverflow.com/questions/20076814

复制
相关文章

相似问题

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