Skip to content

Commit 557c218

Browse files
committed
Fixed normal blending mode
1 parent 99d8db0 commit 557c218

1 file changed

Lines changed: 9 additions & 2 deletions

File tree

v3/src/renderer/webgl/WebGLRenderer.js

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ WebGLRenderer.prototype = {
136136
// Map Blend Modes
137137

138138
var add = [ gl.SRC_ALPHA, gl.DST_ALPHA ];
139-
var normal = [ gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA ];
139+
var normal = [ gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA, gl.ONE, gl.ONE_MINUS_SRC_ALPHA ];
140140
var multiply = [ gl.DST_COLOR, gl.ONE_MINUS_SRC_ALPHA ];
141141
var screen = [ gl.SRC_ALPHA, gl.ONE ];
142142

@@ -312,7 +312,14 @@ WebGLRenderer.prototype = {
312312
batch.flush();
313313
blend = this.blendModes[newBlendMode];
314314
gl.enable(gl.BLEND);
315-
gl.blendFunc(blend[0], blend[1]);
315+
if (blend.length > 2)
316+
{
317+
gl.blendFuncSeparate(blend[0], blend[1], blend[2], blend[3]);
318+
}
319+
else
320+
{
321+
gl.blendFunc(blend[0], blend[1]);
322+
}
316323
this.blendMode = newBlendMode;
317324
}
318325
}

0 commit comments

Comments
 (0)