首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有32位glBlendFunc纹理的RGBA ()

具有32位glBlendFunc纹理的RGBA ()
EN

Stack Overflow用户
提问于 2010-12-13 22:42:27
回答 2查看 1.6K关注 0票数 0

我有一个半透明的纹理,在不同的位置有不同的不透明度。我有主纹理位图和遮罩位图。当程序执行时,遮罩位图中的alpha值将加载到主纹理位图的alpha值中。我想要透明的区域的值是255 alpha,而我想要保持完全不透明的区域的值是0 alpha。对于中间透明度也有中间值。

我尝试了所有的glBlendFunc()设置,但它要么完全不可见,要么作用于源纹理的RGB颜色。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-12-13 22:50:01

通常在OpenGL中,0表示透明,255表示不透明,这与您的情况正好相反。

所以就像这样:

代码语言:javascript
复制
glBlendFunc(GL_ONE_MINUS_SRC_ALPHA, GL_SRC_ALPHA);

应该行得通。

票数 4
EN

Stack Overflow用户

发布于 2012-08-18 04:29:18

我也有同样的问题。我正在使用SDL_Image加载我的图像。我意识到当我转换图像时,我使用的是SDL_DisplayFormat而不是SDL_DisplayFormatAlpha。这解决了我的问题。

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

https://stackoverflow.com/questions/4429932

复制
相关文章

相似问题

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