Batching - prevent joining of lightmasked items
It turns out lights masking misbehaves when items that are masked are joined. This PR simply disables joining in this case.
This commit is contained in:
parent
4384605cb1
commit
389dd6704e
2 changed files with 12 additions and 2 deletions
|
@ -1277,7 +1277,12 @@ bool RasterizerCanvasGLES2::try_join_item(Item *p_ci, RenderItemState &r_ris, bo
|
|||
r_batch_break = false;
|
||||
bool join = true;
|
||||
|
||||
// light_masked may possibly need state checking here. Check for regressions!
|
||||
// light_masked objects we just don't currently support for joining
|
||||
// (this could possibly be improved at a later date)
|
||||
if (p_ci->light_masked) {
|
||||
join = false;
|
||||
r_batch_break = true;
|
||||
}
|
||||
|
||||
// we will now allow joining even if final modulate is different
|
||||
// we will instead bake the final modulate into the vertex colors
|
||||
|
|
|
@ -1678,7 +1678,12 @@ bool RasterizerCanvasGLES3::try_join_item(Item *p_ci, RenderItemState &r_ris, bo
|
|||
r_batch_break = false;
|
||||
bool join = true;
|
||||
|
||||
// light_masked may possibly need state checking here. Check for regressions!
|
||||
// light_masked objects we just don't currently support for joining
|
||||
// (this could possibly be improved at a later date)
|
||||
if (p_ci->light_masked) {
|
||||
join = false;
|
||||
r_batch_break = true;
|
||||
}
|
||||
|
||||
// we will now allow joining even if final modulate is different
|
||||
// we will instead bake the final modulate into the vertex colors
|
||||
|
|
Loading…
Reference in a new issue