透明四边形上的OpenGL DECAL纹理?

Posted

技术标签:

【中文标题】透明四边形上的OpenGL DECAL纹理?【英文标题】:OpenGL DECAL Texture on a Transparent Quad? 【发布时间】:2010-03-10 16:42:30 【问题描述】:

我有一个带有透明和不透明像素的 OpenGL 纹理(例如,纹理包含一个圆圈,圆圈外的区域是透明的,alpha 为 0.0)。

我正在使用 GL_DECAL 模式将此纹理映射到一个简单的四边形,并且它可以工作 - 纹理的透明部分是不可见的,并且我在四边形的背景下看到了我的圆圈。

现在我想让四边形透明。但是,当我这样做时,纹理会采用底层四边形的透明度值,因此当我将四边形设置为“完全透明”且 alpha 为 0.0 时,纹理是不可见的。

如何使 QUAD 透明,但保持 TEXTURE 的不透明部分可见?

非常感谢...

【问题讨论】:

【参考方案1】:

我不是专家,我没有时间尝试,但我认为使用 GL_REPLACE 代替 GL_DECAL 对你有用。

【讨论】:

我只是在摆弄它,它就像一个魅力!谢谢。

以上是关于透明四边形上的OpenGL DECAL纹理?的主要内容,如果未能解决你的问题,请参考以下文章

OpenGL GLSL 通过任意形状混合两个纹理

四边形上的 Opengl 纹理

OpenGL - 四边形上的纹理坐标

OpenGL半透明四边形神器

Mac OS X 上的 OpenGL 纹理损坏

如何阻止透明纹理上的OpenGL背景出血