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

Workaround Safari 9 WebGL bug #2989

Closed
pjcozzi opened this issue Sep 1, 2015 · 8 comments
Closed

Workaround Safari 9 WebGL bug #2989

pjcozzi opened this issue Sep 1, 2015 · 8 comments

Comments

@pjcozzi
Copy link
Contributor

pjcozzi commented Sep 1, 2015

Not for 1.13 today.

Discussion: https://twitter.com/pjcozzi/status/638390320619761664

If we need to workaround this, replace all uses of WebGLRenderingContext with the actual constant, e.g.,

WebGLRenderingContext.LESS

becomes

0x0201 // WebGLRenderingContext.LESS

@lilleyse let's discuss.

@pjcozzi
Copy link
Contributor Author

pjcozzi commented Sep 2, 2015

Should be fixed in https://bugs.webkit.org/show_bug.cgi?id=148449 but doesn't work yet in WebKit r189243 (02 September 2015).

@mramato
Copy link
Member

mramato commented Sep 8, 2015

Still broken in r189485 (September 8th). If iOS 9 does get released tomorrow, I'm assuming Cesium will be broken.

@mramato
Copy link
Member

mramato commented Sep 9, 2015

iOS 9 will be released on September 16

@pjcozzi
Copy link
Contributor Author

pjcozzi commented Sep 11, 2015

@lilleyse can you do this soon? Unfortunately, we're going to need this workaround. I think the best approach is to introduce a new static class like ContextLimits with _all _ the constants from the spec (perhaps called ContextConstants or WebGLConstants).

@mramato
Copy link
Member

mramato commented Sep 11, 2015

@pjcozzi should we make an announcement on the mailing list ahead of time? No need to be too negative on Safari, but just mention that it will break existing Cesium apps and people shouldn't upgrade iOS or Safari if they need Cesium until we release a workaround (or Apple releases a fix).

@lilleyse
Copy link
Contributor

Yes I can start working on this today.

@lilleyse
Copy link
Contributor

There are many areas that already hard code constants, like https://github.com/AnalyticalGraphicsInc/cesium/blob/master/Source/Renderer/BufferUsage.js#L11-L14

Should I modify all of these to use the new constants class as well?

@pjcozzi
Copy link
Contributor Author

pjcozzi commented Sep 12, 2015

Should I modify all of these to use the new constants class as well?

Yes, those are very old...before I even knew of WebGLRenderingContext.

@pjcozzi should we make an announcement on the mailing list ahead of time?

Yes, go ahead.

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

No branches or pull requests

3 participants