Live data from Hacker News

Apple proposes new web 3D graphics API

webkit.org

441–450 of 650 posts

Re: Apple proposes new web 3D graphics API

#441
post #233

Earlier quoted context omitted.

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

The best 3D standard for the web is one that can be delivered cross-platform with high performance, high quality, and no need for end-user driver installs. And that can be made safe and secure without losing too much performance. In exploring the issue, we concluded that basing it 100% on Vulkan wasn't the best way to achieve these goals. The response wasn't about how Vulkan was good for the web, but rather about how…

Don't you agree that the main reason Vulkan is not the best way to achieve those goals is because Microsoft and Apple are refusing to support it? This is circular reasoning.

Re: Apple proposes new web 3D graphics API

#442
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…

> 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…

Anyway, WebVR support is shaky on most browsers, except Firefox / Nightly where it works properly. Get that working before WebGL 2 or whatever. And throw in some support for external GPUs. Moved away from Apple and got myself an Intel NUC i7 w/ Thunderbolt. Better everything in there. Can use external GPUs of all kinds for easy testing. Apple may have had its best quarter ever but is not sexy to me anymore.

Yeah, support Vulkan.

Re: Apple proposes new web 3D graphics API

#443
post #297
post #269

Earlier quoted context omitted.

We think the eventual shader language will not be based on MSL. We need both source and binary formats, and MSL doesn't even have a public binary format at this time. However, if we do end up with something MSL-inspired, the same commitment to follow the Patent Policy would apply.

I think it's a sane expectation to use something that is both open and already available. GLSL, SPIR-V and etc. Using something like MSL won't go anywhere, if there won't be comparable, open and freely available implementation already. You should take that idea seriously, if you want to view it as a truly collaborative project that invites everybody's participation. I.e using MSL from the start was a major mistake.

Quoting from their proposal:

> We don’t expect this to become the actual API that ends up in the standard, and maybe not even the one that the Community Group decides to start with, but we think there is a lot of value in working code.

I think it's pretty natural to write what is essentially a proof-of-concept with tools one is ga,iliar with.

Re: Apple proposes new web 3D graphics API

#444
post #73

Earlier quoted context omitted.

I don't get what you are suggesting. Apple supporting Vulkan on macOS and iOS wouldn't do anything to expose a new GPU API to the web. They are totally orthogonal. We're expecting work on the new web API to be super collaborative, so your framing is uncharitable and incorrect.

Not trying to be uncharitable here, I'm just sharing how it looks to someone driving by. That doc says: "It[WebGL] was based on OpenGL ES, a cross-platform API for graphics targeted at embedded systems. This was the right starting place, because it made it possible to implement the same API in all browsers easily, especially since most browser engines were running on systems that had support for OpenGL." And then it…

But isn't the Vulcan situation on windows similar to the OpenGL one? You need to install drivers...

In which case won't browser makers target directx anyway, as they have with webgl?

Re: Apple proposes new web 3D graphics API

#445
post #90

Earlier quoted context omitted.

Sounds like you're focused on what is best for Vulkan, not what is best for the web.

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

Because Vukkan is too low level for the web, and thus not a good impedence match. Here is a nice writeup: https://floooh.github.io/2016/08/13/webgl-next.html

Re: Apple proposes new web 3D graphics API

#447

Earlier quoted context omitted.

It has three things going for it: 1) It's currently the fastest (unlike DirectX) 2) It's not controlled by an OS company (unlike DirectX and Metal) 3) It reflects recent developer and hardware concerns (unlike OpenGL)

And does it make security assurances making it suitable to expose to the web? I know a bit about DirectX and OpenGL, and I wouldn't expose a direct interface to either of them on the web. Does Vulcan make security and isolation assurances? If not then it is useless.

Obviously there has to be a ground up rethink with security in mind. The standard won't be the same API, just like WebGL isn't the same as OpenGL. It's just, where it's possible to, you use the same API. The point is why not start with a starting point you can use on potentially every platform?

There's no way Apple would ever allow Metal proper to be ported to PlayStation or Windows, so you're limiting yourself to at best two platform coverage targeting this new standard. Vulcan will, hopefully, work on every platform. At least subsets of it, with shims. No way Metal ever gets there.

Re: Apple proposes new web 3D graphics API

#448
I'd like to see Apple implement Safari's missing functionality before they try and come up with a replacement for WebGL.

Where are getUserMedia, MediaRecorder, WebRTC, filesystem, vibration, screen orientation, Service Workers, Web Bluetooth ? What about WebGL 2? I'm sure there are a few more I missed too.

Those are things that are really holding the web browsing experience back on iOS/MacOS, not an extra 20% 3D performance and slightly shinier graphics.

Or why not lift the app store restrictions so that Google/Mozilla can actually ship non-crippled web browsers and implement it all for you?

Re: Apple proposes new web 3D graphics API

#449

Earlier quoted context omitted.

Well, I guess you know all this but you've asked me to elaborate. So, in terms of compatibility you have: DX12: Windows only. Metal: macOS/iOS only. Vulkan: cross-platform and cross-vendor. Windows 7/8/10, Android, Linux, MoltenVK supports iOS/macOS with a wrapper. That's a big win for Vulkan IMHO. Valve also agrees with this assertion. In terms of performance, I don't think Metal is even a contender, given how bad m…

It makes no sense to judge the quality of an API by the power of the available hardware it might be running on. The discussion is not about what platform will run VR the best. In addition, Apple will be rightly considering iOS when evaluating options for web technologies, not the increasingly small section of the planet running Nvidia and AMD hardware on Windows.

> It makes no sense to judge the quality of an API by the power of the available hardware it might be running on.

I didn't make any such judgement or even mention VR a single time!

But, looking at the points you've raised, I can say with confidence that Vulkan has been designed, taking into considering these issues.

Vulkan has been carefully engineered from the ground up not to alienate tile-based renderer hardware. So, it's just as suitable for mobile GPUs as desktop GPUs. https://www.imgtec.com/blog/tiling-positive-or-how-vulkan-ma...

As such, it's already supported by many mobile GPU hardware vendors.

> In addition, Apple will be rightly considering iOS when evaluating options for web technologies, not the increasingly small section of the planet running Nvidia and AMD hardware on Windows.

The GPU in the iPhone 7 uses a custom version of the PowerVR GT7600 GPU. While this is purely speculation, PowerVR does support Vulkan in their other offerings, so it's not that much of a stretch to assume that the hardware is at least capable of it.

NVidia, AMD and Intel power all of Apple's desktop graphics, in addition, they collectively power almost all of Windows and Linux setups too (excepting other mobile and SFF computers)

Re: Apple proposes new web 3D graphics API

#450
post #195
post #127

Earlier quoted context omitted.

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…

So who stops Apple (and MS for that matter) from making it official? If it's about collaboration, let them grow up and stop their petty lock-in games. And if not, I don't think anyone should accept proposals coming from them for such things.

The proposal in this case appears to be coming from the safari group rather than the metal one.

Even if that weren't the case, for a standard to be a success then pragmatism is more useful than idealism. Telling the maintainers of most of the worlds desktops to fall in line isn't really practical.

Post reply on HN