Live data from Hacker News

Apple proposes new web 3D graphics API

webkit.org

211–220 of 650 posts

Re: Apple proposes new web 3D graphics API

#211
post #48

Earlier quoted context omitted.

How is this anti-competitive? They're explicitly trying to create a cross-platform JavaScript API for graphics, one that can be built on top of whatever platform-specific low-level APIs that exist. This seems to be the exact opposite of anti-competitive.

Because it's their own. How convenient to propose your own standard as the standard, made specifically for your own engine...

No it's not. I get the feeling you didn't really read the blog post. This proposed standard is supposed to be able to be implemented on top of all 3 platform-specific APIs, it's not made specifically for Metal.

Yes, they're using the Metal Shading Language in this initial proposal. But in the blog post they explicitly say that the choice of the shading language is likely to be contentious (or, as they put it, "fun"), and so they're deferring the issue right now and just picking the Metal Shading Language because they're Apple developers. The actual choice of shading language in the final version of this proposal is going to be the result of the standardization process, and will probably not end up being the Metal Shading Language.

Re: Apple proposes new web 3D graphics API

#212

Earlier quoted context omitted.

> I understand your desire to have Vulkan on Apple platforms, but it's really a separate issue from the right target for WebGPU. No, it's not a separate issue. If Apple supported Vulcan, the simple act of proposing this new API as a standard would be laughed out of the room. We can only speculate why Apple won't support Vulcan but I'm going to go with "Prefer a solution they designed themselves over one designed by o…

What people seem to be missing here is that based on available info it seems Microsoft isn't officially supporting Vulkan either. Sure Nvidia and AMD have released drivers for Windows that have Vulkan support, but we're talking about a web standard that would need to be implemented by browser makers and if Microsoft isn't going to use Vulkan, then what do they implement as the backing for this new standard in Edge? P…

> Microsoft isn't officially supporting Vulkan either

It's Microsoft's lack of official support for OpenGL on Windows that leads to WebGL implementations using of ANGLE translation to Direct3D, rather than direct OpenGL, right? So I assume we'd have the same situation for a hypothetical WebVulkan. Yes, Vulkan would be available on Windows with the right drivers, but the browsers wouldn't want to use it.

Re: Apple proposes new web 3D graphics API

#213
post #127

Earlier quoted context omitted.

I think it's a bit disingenuous to say they're totally orthogonal. Presumably you understand that if Apple supported Vulkan natively, then "WebVulkan" would be the obvious choice for a web API (just as it was with OpenGL/WebGL).

I don't think browsers will choose to pipe this through Vulkan drivers on Windows (since they are all unofficial and in general don't have as complete coverage) and I don't think they'd choose to use unofficial Vulkan drivers for Apple platforms either, even if they existed. Also, if you compare the sample code in the post with a sample of Vulkan code, I think it will be clear that a literal "WebVulkan" is a road bes…

> Also, if you compare the sample code in the post with a sample of Vulkan code, I think it will be clear that a literal "WebVulkan" is a road best not traveled.

Are you sure? Don't forget about WebAssembly… Just as Emscripten currently exposes the original OpenGL ES API as a wrapper for WebGL, for the sake of porting existing C/C++ code that uses it, in the future there will be a desire to port Vulkan renderers to the web. That will be easier if the browser API is based on Vulkan; otherwise you'll end up with a shim on top of a shim. Also, the same arguments about developer familiarity that led to WebGL being designed as it is could apply just as well to Vulkan - albeit somewhat more speculatively, given Vulkan's newness.

Re: Apple proposes new web 3D graphics API

#214
post #41

Earlier quoted context omitted.

We're not complaining, we're explaining the lay of the land. Working on top of all three of these APIs is totally doable and will result in a better API for the web. Things worth noting: - We believe other browser vendors agree with us that the web API should work on all three of the major native APIs. - The web has security requirements which force us to go a bit higher-level than Vulkan anyway. I understand your de…

You say Vulkan drivers will, for the forseeable future, be of lower quality than D3D12 drivers and lack official support. Lets assume I blindly accept this faith-based argument. WebGPU than, must be implemented on top of D3D12 and Metal, two already very different APIs. What, than, makes a hypothetical WebVulkan unfeasible in contrast to WebGPU?

A hypothetical WebVulkan is tied to an API that it is guaranteed to have to translate from. A hypothetical WebGPU could simply be tweaked to better support its multiple target APIs.

Re: Apple proposes new web 3D graphics API

#215
post #183

Earlier quoted context omitted.

Care to explain? Why is Vulkan not good for the web?

With that logic, we should only have blink, or webkit or gecko, just one engine

You're conflating implementations with APIs. If we had a theoretical "WebVulkan" standard, we'd have implementations in each browsers and along with display drivers underneath.

Re: Apple proposes new web 3D graphics API

#216

Earlier quoted context omitted.

What people seem to be missing here is that based on available info it seems Microsoft isn't officially supporting Vulkan either. Sure Nvidia and AMD have released drivers for Windows that have Vulkan support, but we're talking about a web standard that would need to be implemented by browser makers and if Microsoft isn't going to use Vulkan, then what do they implement as the backing for this new standard in Edge? P…

There is a difference between "not officially supporting" Vulkan and completely preventing anyone from providing a Vulkan implementation for your platform. Microsoft allows competing APIs to be integrated into their platform at the driver level. Apple does not.

Could someone not provide Vulkan driver support on the Mac or is it forbidden by Apple to do so?

Re: Apple proposes new web 3D graphics API

#217

Earlier quoted context omitted.

What people seem to be missing here is that based on available info it seems Microsoft isn't officially supporting Vulkan either. Sure Nvidia and AMD have released drivers for Windows that have Vulkan support, but we're talking about a web standard that would need to be implemented by browser makers and if Microsoft isn't going to use Vulkan, then what do they implement as the backing for this new standard in Edge? P…

There is a difference between "not officially supporting" Vulkan and completely preventing anyone from providing a Vulkan implementation for your platform. Microsoft allows competing APIs to be integrated into their platform at the driver level. Apple does not.

Apple allows you to provide an alternative API on OSX but not on iOS.

Microsoft is exactly the same. They do not support custom APIs on Windows Mobile AFAIK.

Re: Apple proposes new web 3D graphics API

#218
post #69

Earlier quoted context omitted.

We expect DirectX 12 drivers to be more complete, more performant, and more likely to be available out of the box without a separate install. We expect Windows browsers will want to build on top of DirectX, not Vulkan.

I don't see why this would be the case. The vendors (i.e. NVidia) are providing the drivers, I see no reason why they would porposely cripple them.

Because they have been doing so with OpenGL (an identical situation) for years.

Besides, "purposefully cripple" is inaccurate. They just put more effort into Direct3D because there's no reason to support OpenGL as fully.

Re: Apple proposes new web 3D graphics API

#219
post #69

Earlier quoted context omitted.

We expect DirectX 12 drivers to be more complete, more performant, and more likely to be available out of the box without a separate install. We expect Windows browsers will want to build on top of DirectX, not Vulkan.

I don't see why this would be the case. The vendors (i.e. NVidia) are providing the drivers, I see no reason why they would porposely cripple them.

It's the current reality with OpenGL on Windows, which is why Windows browsers do not implement WebGL with OpenGL, but rather by translating to Direct3D.

Maybe it'll be different for Vulkan, but that would be a surprise.

Re: Apple proposes new web 3D graphics API

#220
post #125

MS doesn't support Vulkan! Why are many people bashing Apple as the sole company not supporting it??? MS has abandoned OpenGL in support of D3D. Why have people forgotten this???

Microsoft doesn't need to support Vulkan, because Windows is flexible enough that GPU vendors can expose other APIs like OpenGL or Vulkan without Microsoft's permission. It's a very different situation to macOS, where Apple are the sole gatekeepers of the graphics stack and nothing can ever happen without their direct support.

Ok, thanks. Although I'm curious about the exact details preventing it.
Post reply on HN