5 ms·
Don't they need some kind of OpenGL support anyway, for WebGL? (Okay, that's OpenGL ES, but it's very similar.) Why can't they continue to support OpenGL at le
by iainmerrick 8y ago
Don't they need some kind of OpenGL support anyway, for WebGL? (Okay, that's OpenGL ES, but it's very similar.)
Why can't they continue to support OpenGL at least to the level required by WebGL? And if they want to switch out the backend to some kind of GL-to-Metal translation layer, so be it.
I don't care whether it's a native driver or a compatibility layer. If I do care, for performance reasons, I should be using Metal, sure.
- monocasa 8y agoBecause once they open that can of worms they're on the hook for supporting it. Additionally, there isn't a good way out on the browser side, as Vulkan/DX12/Metal style APIs would pretty trivially allow JS code to escape whatever sandbox it's in. So the obvious answer is to keep their OpenGL implementation internal to Safari, and only support one of the new APIs (obvs Metal in this case) for native apps.
- iainmerrick 8y agoWhy would the web need Vulkan-style APIs? It just needs WebGL (so far). I still don’t see why that Safari implementation of OpenGL would have to stay internal.
- favorited 8y ago> Why would the web need Vulkan-style APIs For the record, there is an Apple-led initiative to bring a modern GPU interface standard to the browser: https://webkit.org/blog/7380/next-generation-3d-graphics-on-the-web/ https://webkit.org/blog/7380/next-generation-3d-graphics-on-...
- iainmerrick 8y agoI hope there’s no plan to drop WebGL. Although it wouldn’t surprise me. Really the only question is when -- years or decades?
- pjmlp 8y agoThey are all (Apple, Mozilla, Google, Microsoft) collaborating on the WebGLNext design, as Khronos decided to leave it up to W3C. https://www.w3.org/community/gpu/ https://www.w3.org/community/gpu/
- galad87 8y agoNo, you can just implement WebGL on top of Metal/DirectX/Vulkan, but WebGL is a subset of OpenGL.
- pjmlp 8y agoNo, WebGL specification does not require the underlying implementation to be OpenGL ES. Also the APIs do not map 1:1 to OpenGL ES anyway due to security constraints.