diff options
author | RĂ©mi Verschelde <rverschelde@gmail.com> | 2018-09-10 16:02:58 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-09-10 16:02:58 +0200 |
commit | de60714b910601b6e39cf440cc21b391a90ee58e (patch) | |
tree | ed328a11085b6775f8f0e029fa51795322d66891 /drivers/gles3/rasterizer_canvas_gles3.cpp | |
parent | fcabf95934953e9dea1335f0b512a4cac2dbcd8a (diff) | |
parent | 0625f5b546b91cd717222ad2c459c6112102e58e (diff) |
Merge pull request #21857 from BastiaanOlij/fix_never_true_prealpha
Fixed a theoretical condition where prealpha prevents lighting
Diffstat (limited to 'drivers/gles3/rasterizer_canvas_gles3.cpp')
-rw-r--r-- | drivers/gles3/rasterizer_canvas_gles3.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gles3/rasterizer_canvas_gles3.cpp b/drivers/gles3/rasterizer_canvas_gles3.cpp index fc41f17164..33e9e5f772 100644 --- a/drivers/gles3/rasterizer_canvas_gles3.cpp +++ b/drivers/gles3/rasterizer_canvas_gles3.cpp @@ -1418,7 +1418,7 @@ void RasterizerCanvasGLES3::canvas_render_items(Item *p_item_list, int p_z, cons if (blend_mode == RasterizerStorageGLES3::Shader::CanvasItem::BLEND_MODE_DISABLED && (!storage->frame.current_rt || !storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT])) { blend_mode = RasterizerStorageGLES3::Shader::CanvasItem::BLEND_MODE_MIX; } - bool unshaded = shader_cache && (shader_cache->canvas_item.light_mode == RasterizerStorageGLES3::Shader::CanvasItem::LIGHT_MODE_UNSHADED || blend_mode != RasterizerStorageGLES3::Shader::CanvasItem::BLEND_MODE_MIX); + bool unshaded = shader_cache && (shader_cache->canvas_item.light_mode == RasterizerStorageGLES3::Shader::CanvasItem::LIGHT_MODE_UNSHADED || (blend_mode != RasterizerStorageGLES3::Shader::CanvasItem::BLEND_MODE_MIX && blend_mode != RasterizerStorageGLES3::Shader::CanvasItem::BLEND_MODE_PMALPHA)); bool reclip = false; if (last_blend_mode != blend_mode) { |