Merge pull request #48992 from lawnjelly/ewok_fix_joined_item_flags

Batching - fix item_batch_flags stale state
This commit is contained in:
Rémi Verschelde 2021-05-23 16:22:06 +02:00 committed by GitHub
commit 714b4dc07b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -2560,6 +2560,13 @@ PREAMBLE(void)::render_joined_item_commands(const BItemJoined &p_bij, Rasterizer
bdata.fvf = RasterizerStorageCommon::FVF_LARGE;
}
// make sure the jointed item flags state is up to date, as it is read indirectly in
// a couple of places from the state rather than from the joined item.
// we could alternatively make sure to only read directly from the joined item
// during the render, but it is probably more bug future proof to make sure both
// are up to date.
bdata.joined_item_batch_flags = p_bij.flags;
// in the special case of custom shaders that read from VERTEX (i.e. vertex position)
// we want to disable software transform of extra matrix
if (bdata.joined_item_batch_flags & RasterizerStorageCommon::PREVENT_VERTEX_BAKING) {