Javascript 如何在WebGL中实现各种GlobalComposite操作?
我正在将我的项目从Javascript画布迁移到Javascript WebGL 在我的代码的某些部分中,我使用Canvas来处理诸如照明和雾之类的事情 现在我正在使用WebGL,我不再能够访问这些,而是能够访问。我特别希望从Canvas迁移到WebGL的全局合成操作是Javascript 如何在WebGL中实现各种GlobalComposite操作?,javascript,html5-canvas,webgl,light,Javascript,Html5 Canvas,Webgl,Light,我正在将我的项目从Javascript画布迁移到Javascript WebGL 在我的代码的某些部分中,我使用Canvas来处理诸如照明和雾之类的事情 现在我正在使用WebGL,我不再能够访问这些,而是能够访问。我特别希望从Canvas迁移到WebGL的全局合成操作是soft light,但存在两个问题: 我在混合函数列表中没有看到该项 我不确定在哪里可以找到柔和灯光的源代码,因此我不知道如何模拟它 我想我的问题分为两部分。第一,是否有任何来源列出了各种全局复合操作是如何实现的,如果有,是
soft light
,但存在两个问题:
柔和灯光
的源代码,因此我不知道如何模拟它
柔和灯光
转换为WebGL混合功能,以便在我的应用程序中使用
也就是说,在画布中,我会这样做:
context.globalCompositeOperation = 'soft-light';
// draw images
context.globalCompositeOperation = 'source-over'; // reset back to default
WebGL中的等价物是什么?类似于。。(这很接近,但不准确)
gl.blendFunc(gl.DST_COLOR, gl.ONE_MINUS_SRC_ALPHA);
// draw images
gl.blendFunc(gl.ONE, gl.ZERO); // reset back to default