diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2018-04-04 22:41:36 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-04 22:41:36 +0200 |
commit | a1f835df771464e9db6909fd104751ccbbc1b91a (patch) | |
tree | 310b077f318f8018d8fd43dc3ac993ecbf41d63c | |
parent | 7e9aa89fb810bf3db398b4ac1a094d13cdba9183 (diff) | |
parent | 314a41951105bc6c37c570e5a9664d28a40ce985 (diff) |
Merge pull request #17775 from sketchyfun/multiply_blendmode_fix
multiply blend mode fix for spatial materials
-rw-r--r-- | drivers/gles3/rasterizer_scene_gles3.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gles3/rasterizer_scene_gles3.cpp b/drivers/gles3/rasterizer_scene_gles3.cpp index 02d851288a..5b6b3d44f2 100644 --- a/drivers/gles3/rasterizer_scene_gles3.cpp +++ b/drivers/gles3/rasterizer_scene_gles3.cpp @@ -2085,9 +2085,9 @@ void RasterizerSceneGLES3::_render_list(RenderList::Element **p_elements, int p_ case RasterizerStorageGLES3::Shader::Spatial::BLEND_MODE_MUL: { glBlendEquation(GL_FUNC_ADD); if (storage->frame.current_rt && storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT]) { - glBlendFuncSeparate(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA, GL_ONE, GL_ONE_MINUS_SRC_ALPHA); + glBlendFuncSeparate(GL_DST_COLOR, GL_ZERO, GL_DST_ALPHA, GL_ZERO); } else { - glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); + glBlendFuncSeparate(GL_DST_COLOR, GL_ZERO, GL_ZERO, GL_ONE); } } break; |