-
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
Re-support glTF 1.0 premultipliedAlpha #7419
Comments
Using Cesium > 1.50 on iOS 12.x appears to always use premultipliedAlpha, no matter what value is specified in the GLTF model. On the other hand, Chrome on Windows 10 never uses premultipliedAlpha. This is a problem as it is impossible to use the same models and shaders on all platforms. |
This is still an issue as of June 2019. Any chance of a fix coming soon or perhaps someone could give me a pointer on where to look so I could attempt to fix it myself? |
@xtassin there was a recent fix where Chrome on Windows was incorrectly setting premultiplyAlpha to true, this was turned off in this PR: #7804 I imagine this is what's causing:
Based on the discussion here: #7795 (comment) it sounds like always set premultiply to false was the intended outcome, so the fact that iOS is using premultiply is the problem here? |
@OmarShehata yes, it appears iOS always requires premultiplied alpha. I am testing with an (old) iPad Air 2 with iOS 12.1.1 |
I would like to give an update: I have received screenshot from users on desktop where this problem is visible (wrong handling of pre-multiplied alpha). This would indicate that the issue may also be GPU/OS dependent. I will try to gather more details. |
@OmarShehata, disabling orderIndependentTranslucency forces Cesium to use pre-multiplied alpha correctly on all platform. However, it creates other rendering issues that make it un-usable as a workaround in production. |
I'm closing this issue, since as of 1.97 we're only providing limited support for glTF 1.0. |
Cesium used to support the glTF 1.0
premultipliedAlpha
property. This was removed in 1.50 when we we updated the glTF pipeline:#6805 (comment)
This would only work when OIT is disabled. See forum thread:
https://groups.google.com/d/msg/cesium-dev/6dCttPKnJWw/vxCNm2jEBAAJ
This breaking change was not mentioned in
CHANGES.md
, which made this much harder to find. It might be worth adding a note about it there too.The text was updated successfully, but these errors were encountered: