Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix modulation propagation for Y-sorted CanvasItems #77079

Merged

Conversation

kleonc
Copy link
Member

@kleonc kleonc commented May 14, 2023

There was already RendererCanvasCull::Item.ysort_modulate but... currently it was never set/used 🙃 (likely overlooked in 4.0 rewriting). This PR is pretty much redoing what was done when it was originally added in #30318 (separately stores and applies the modulation for each item within the branches flattened due to Y-sorting).

Fixes #63994 (actual cause of the other issues).
Fixes #72519.
Fixes #73266.
(tested MRPs from all of these)

Copy link
Member

@akien-mga akien-mga left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks correct to me, but I'll let @clayjohn validate further.

@kleonc kleonc requested a review from clayjohn May 23, 2023 15:48
Copy link
Member

@clayjohn clayjohn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me as well. This mirrors the approach used in 3.x

@akien-mga akien-mga merged commit 0821262 into godotengine:master May 24, 2023
@akien-mga
Copy link
Member

Thanks!

@YuriSizov
Copy link
Contributor

Cherry-picked for 4.0.4 together with #78134.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment