我可以为 WebGL2 中的 frambuffer 确定每个颜色附件(drawbuffer)的混合函数吗?

问题描述 投票:0回答:0

我已经制作了具有类似 Vulkan 接口的 WebGL2 渲染器供私人使用。

在 Vulkan 中,当我在帧缓冲区中有多个颜色附件时,我可以在创建图形管道时为每个颜色附件选择 BlendFunc。 片段着色器可能如下所示

layout (location = 0) out vec3 outDiffuse;
layout (location = 1) out vec3 outNormal;

void main()
{
    outDifuse = ...;
    outNormal = ...;
}

我可以在 WebGL2 中做同样的事情吗?

我发现 OpenGL4 中的 glBlendFunci 可以指定绘制缓冲区索引。但不适用于 WebGL2(我假设是 ES3.0)

如果 WebGL2 不为此提供功能,我将放弃并有限地实施它,就像只使用带有警告日志的第一个 BlendFunc。

webgl vulkan webgl2
© www.soinside.com 2019 - 2024. All rights reserved.