-
-
Notifications
You must be signed in to change notification settings - Fork 318
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
Hillshade geometry update fixes #2842
Conversation
Also do it in `clear` though that's probably not necessary.
Bloaty Results (iOS) 🐋Compared to main
Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/bloaty-results-ios/pr-2842-compared-to-main.txt |
Benchmark Results ⚡
Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/benchmark-results/pr-2842-compared-to-main.txt |
Bloaty Results 🐋Compared to main
Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/bloaty-results/pr-2842-compared-to-main.txtCompared to d387090 (legacy)
Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/bloaty-results/pr-2842-compared-to-legacy.txt |
@louwers the behavior in your screenshots is already present in main on Android |
…ted earlier are not applied to the underlying buffers. Fix a bug where fill updates would apply the fill vertices to the outline drawables, leading to errors (if they were applied)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have not looked at the code, but i tested this in my application, and it fixes the issue.
Looks like we have a longstanding issue with updating the vertices without updating the segments. That's fine in Metal, but leads to problems in GL because the segments retain Vertex Array identifiers, so we get GL errors if we actually replace the vertices alone. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@TimSylvester Render tests are failing unfortunately.
Fixes a problem where masking changes in hillshade tile geometry are not recognized as updated.
Fixes a bug where vertex attributes on a drawable replaced by ones created earlier are not applied to the underlying buffers. This would have been an issue previously, if the newly-applied attributes were not marked dirty, as with shared static tile geometry.
Fixes a bug where fill updates would apply the fill vertices to the triangulated outline drawables (if enabled), which would lead to errors if they were applied, but they weren't because of the previous item.
Resolves #2838 ?