高亮混合函数OpenGL

高亮混合函数OpenGL,opengl,blending,Opengl,Blending,OpenGL中用于实现荧光灯的标准内置混合函数是什么?使用glBlendEquation(GL_MIN)产生所需的效果,但不允许基于不透明度的混合。我使用glBlendFunc(GL_SRC_ALPHA,GL_ONE_减去grc_ALPHA)建模透明度是否可以使用最小混合来解释不透明度?如果不是,是否最好将自定义着色器与帧缓冲区对象一起使用 以下是所需结果的示例(未使用OpenGL渲染),仅供参考: 我最终将可高亮显示的元素渲染为浮点纹理,并使用glBlendFunc(GL_SRC_ALPHA,

OpenGL中用于实现荧光灯的标准内置混合函数是什么?使用
glBlendEquation(GL_MIN)产生所需的效果,但不允许基于不透明度的混合。我使用
glBlendFunc(GL_SRC_ALPHA,GL_ONE_减去grc_ALPHA)建模透明度是否可以使用最小混合来解释不透明度?如果不是,是否最好将自定义着色器与帧缓冲区对象一起使用

以下是所需结果的示例(未使用OpenGL渲染),仅供参考:


我最终将可高亮显示的元素渲染为浮点纹理,并使用
glBlendFunc(GL_SRC_ALPHA,GL_ONE_减去_SRC_ALPHA)进行混合。然后,可以使用相同的混合函数将此中间帧缓冲区与默认帧缓冲区0混合。通过将片段着色器中最终值的rgb分量乘以-1,可以模拟减法混合。浮点纹理支持负值,通常可作为帧缓冲区颜色附件写入。有关更多信息,请参见。

我最终使用
glBlendFunc(GL_SRC_ALPHA,GL_ONE_减去SRC_ALPHA)将可高亮显示的元素渲染到浮点纹理并进行混合。然后,可以使用相同的混合函数将此中间帧缓冲区与默认帧缓冲区0混合。通过将片段着色器中最终值的rgb分量乘以-1,可以模拟减法混合。浮点纹理支持负值,通常可作为帧缓冲区颜色附件写入。有关更多信息,请参阅。

您有一些代码吗?你想举个例子吗?哪种语言?你有代码吗?你想举个例子吗?哪种语言?