-
-
Notifications
You must be signed in to change notification settings - Fork 394
fix(Glyph3DMapper): shift+scale for large coords #3304
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
base: master
Are you sure you want to change the base?
Conversation
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.
Pull Request Overview
This PR fixes jittering issues in the Glyph3DMapper when rendering objects with large coordinates by implementing a shift+scale transformation approach.
- Adds coordinate shift and scale computation to handle large coordinate values
- Applies transformations to both matrix buffers and primitive coordinate buffers
- Ensures the Glyph3DMapper's shift+scale takes precedence over the base mapper's transformation
378955e
to
e11d41b
Compare
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.
LGTM (from a syntax point of view)
@floryst some tests are failing 'Test Suite: Test getPixelWorldHeightAtCoord'
2025-07-31T17:47:44.3348969Z Chrome 138.0.0.0 (Linux x86_64) INFO: ' [PASS] Image match resolution'
2025-07-31T17:47:44.3350652Z Chrome 138.0.0.0 (Linux x86_64) INFO: ' [FAIL] [Widgets/Core/WidgetManager/test/testNoScaleInPixelsWithPerspective] Matching image - delta 97.56% (count: 87808)'
2025-07-31T17:47:44.3753081Z Chrome 138.0.0.0 (Linux x86_64) INFO: ' [PASS] Image match resolution'
2025-07-31T17:47:44.3761310Z Chrome 138.0.0.0 (Linux x86_64) INFO: ' [FAIL] [Widgets/Core/WidgetManager/test/testNoScaleInPixelsWithParallel] Matching image - delta 88.08% (count: 79271)'
2025-07-31T17:47:44.4061230Z Chrome 138.0.0.0 (Linux x86_64) INFO: ' [PASS] Image match resolution'
2025-07-31T17:47:44.4069023Z Chrome 138.0.0.0 (Linux x86_64) INFO: ' [FAIL] [Widgets/Core/WidgetManager/test/testScaleInPixelsWithPerspective] Matching image - delta 95.34% (count: 85807)'
2025-07-31T17:47:44.4265524Z Chrome 138.0.0.0 (Linux x86_64) INFO: ' [PASS] Image match resolution'
2025-07-31T17:47:44.4273077Z Chrome 138.0.0.0 (Linux x86_64) INFO: ' [FAIL] [Widgets/Core/WidgetManager/test/scaleInPixelsWithParallel] Matching image - delta 64.24% (count: 57813)' |
Yeah I'm looking into why the tests are failing. |
e11d41b
to
2bf3702
Compare
Tests have passed. This is good for review @sankhesh |
Context
The glyphmapper does not handle large coordinates, resulting in jittering
Results
Large coordinates no longer jitter when using the glyph3dmapper
Changes
PR and Code Checklist
npm run reformat
to have correctly formatted codeTesting