-
Notifications
You must be signed in to change notification settings - Fork 3.5k
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
improve attribute reliability for ground primitive materials #7421
Conversation
Thanks for the pull request @likangning93!
Reviewers, don't forget to make sure that:
I am a bot who helps you make Cesium awesome! Contributions to my configuration are welcome. 🌍 🌎 🌏 |
snafu, update CHANGES.md in the wrong place... |
This change looks OK to me, but there is a large increase in the number of texture reads from the batch table. Can we detect the issue and fall back to this instead of using it as the default behavior? |
Sorry for the radio silence. Going to try adding a compute pass to check floating point texture precision, but I can't get to that for at least another few days. |
Thanks again for your contribution @likangning93! No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy? I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with |
5 similar comments
Thanks again for your contribution @likangning93! No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy? I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with |
Thanks again for your contribution @likangning93! No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy? I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with |
Thanks again for your contribution @likangning93! No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy? I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with |
Thanks again for your contribution @likangning93! No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy? I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with |
Thanks again for your contribution @likangning93! No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy? I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with |
@cesium-concierge stop |
@likangning93 what's the plan for this PR? |
I'm planning on finishing this up in time for next release |
…ive materials depending on tested precision
@lilleyse this is ready for review. State of the changes are now:
Compared to master |
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.
@likangning93 this change looks ok and at least gets us part of the way there for rendering ground primitive materials on these devices. Could you open an issue to eventually remove this workaround once hardware gets better?
@lilleyse updated! |
Thanks! |
I'll update issues soon
…On Mon, Sep 23, 2019, 5:19 PM Sean Lilley ***@***.***> wrote:
Merged #7421 <#7421>
into master.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#7421>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ABJFGN5OCQR6AWP4FXS6UA3QLEXG7ANCNFSM4GK3IVGA>
.
|
Updated title for #6735 since the remaining iOS artifacts in both ground polylines and ground primitive materials have the same underlying cause. |
The saga continues here: https://groups.google.com/forum/#!topic/webgl-dev-list/aFmFGeyRVRQ |
@lilleyse from the continuation of the saga over in the webgl dev google group, looks like I'll open a PR to roll this back and do the precision updates in the batch table in time for the next release. |
@likangning93 are there any other areas of the code where we were assuming highp for sample2D that should be updated as well? |
Probably anywhere else we use floating point textures, I can take a look. |
@likangning93 cool, maybe this will end up greatly improving compatibility across many devices 🤞 If it's something you aren't going to get to right away, please write up an issue so we don't forget about it. |
Fixes #6739.
Ground Primitive materials don't work the same across all devices I've tried and basically don't work at all on many mobile devices that claim support for all required extensions. This is most easily observed on iOS. There's more notes in the issue, but I'm pretty sure what's happening is that floating point textures are unreliable for large-magnitude values, which is bad because we pack encoded positions on the surface of the Earth to floats in the batch table.
The floats are all within very specific ranges, so this PR naively packs each to 4 uint8 values. It's very wasteful, but memory use is actually the same and the "unpack" op looks pretty cheap, so the only real negative here is the additional code and the salty, salty tears of any information theorists who might look in here.
Note that this doesn't fix depth-texture related bugs, but it should at least make substituting corridors for polylines on terrain possible on iOS devices. I'll have to open an issue to say that the feature is merely "buggy" instead of completely broken.