Live data from Hacker News

Apple proposes new web 3D graphics API

webkit.org

421–430 of 650 posts

Re: Apple proposes new web 3D graphics API

#421
post #235

Earlier quoted context omitted.

It is a serious problem for the future of Apple that they have almost completely lost the support of software developers. It used to be that most software developers had MacBook Pros and, the ones that didn't wished they did. Now software developers are generally buying non-Apple machines and running Linux or Windows. In the short term, this is only a tiny market so the loss of sales is irrelevant but, these people a…

Oh please. Stop claiming every pet issue you have is shared by every developer and that it's "already too late."

Where do I point to any "pet issues"?

I don't say it is already too late, I say it might be. That may be overly dramatic but, unless you refute that there is a problem with an actual argument, you are hardly arguing against that.

Re: Apple proposes new web 3D graphics API

#422
post #165

Earlier quoted context omitted.

Vulkan isn't designed for adversarial input. The web language has to be. That alone is likely to require a ground-up redesign.

But OpenGL wasn't either. I'd like to hear concrete examples of how it couldn't be made workable. There are already validation layers that do a pretty good job of checking for bad usage. Especially since things like NaCl exist(ed) which are inarguably lower level and still safe. I think it's folly to create a whole new API before evaluating the option of using Vulkan.

Which is a good example why I don't have any issues with native code on OpenGL ES 3.x mobiles, while Chrome with WebGL is just choppy and dropping frames left and right.

Re: Apple proposes new web 3D graphics API

#423
post #62

That API looks potentially more pleasant to use than WebGL, which is a nice surprise given it's purportedly more low-level.

That's one of the benefits of designing an API for the web from the get-go, instead of just literally copying an API that's meant to be used from C. It makes for a cleaner and nicer API, even though some lower-level details are exposed.

It's basically a webified Metal API, similar to how WebGL is a webified OpenGL, so I wouldn't say it was designed from the get-go for the web. And as far as I can see from the proposal, WebGPU will still be well usable from C (this is important for talking to it from asm.js / WebAssembly)

Re: Apple proposes new web 3D graphics API

#424

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…

Also HN seems to forget consoles a lot, which don't support OpenGL (PS3 GL was never used in production), even Nintendo with Switch actually does have another API besides Vulkan(NVN), which devs are more keen in using as it allows even more fine grained control.

Re: Apple proposes new web 3D graphics API

#425
This is awesome. IMHO, reducing the complexity of resource management in the app is the right way to go for a web API, and Metal is closer to what a web API should be than Vulkan.

Porting an app from OpenGL to Metal is much easier than porting to Vulkan. A naive port to Metal often performs better than the GL version, whereas getting performance out of a Vulkan port is a lot harder [1]. So, I really hope the proposed API will be a C-based API that can also serve as a middle layer on top of Vulkan/D3D12 for lesser mortals like me in writing cross-platform native apps.

[1] aras-p is a Unity dev: https://twitter.com/aras_p/status/628569113053528065 and https://twitter.com/aras_p/status/628569238794543104

Re: Apple proposes new web 3D graphics API

#426

Earlier quoted context omitted.

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

I was under the impression that DX wasn't available out of the box either? That you'd need to install suitable drivers and a suitable runtime?

Starting with Windows 7, DX became a platform component.

Re: Apple proposes new web 3D graphics API

#427

"The major platform technologies in this space are Direct3D 12 from Microsoft, Metal from Apple, and Vulkan from the Khronos Group. While these technologies have similar design concepts, unfortunately none are available across all platforms." So Apple, the only company not supporting Vulkan on their platforms, is complaining that there isn't a cross-platform solution?

Why is Vulcan so magical that everyone in this thread thinks it is the only choice?

The WebGPU code there looks a lot like vulkan. Just no big struct's or vk prefixes.

Re: Apple proposes new web 3D graphics API

#428
post #223

Earlier quoted context omitted.

Do you have any evidence for your claim that Vulkan is best? Metal and D3D 12 are also low-level APIs designed for performance. I've seen no evidence that Vulkan is better on platforms where there are drivers for two different APIs.

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.

Re: Apple proposes new web 3D graphics API

#429

Earlier quoted context omitted.

Intel has only released beta/test drivers for Windows, and this was their statement as of August: The current Plan Of Record is that Intel® is not supporting Vulkan on Windows drivers. The drivers that were made available on Developer.com are intended for Vulkan developers. So, it is expected that some Vulkan drivers may not work for end users. Intel GPUs power at least 50% of Windows PCs, and I'd guess the number is…

Windows 8 and older power more than half of Windows PCs, so Direct3D 12 is no more widely deployed than Vulkan.

It is, given that Vulkan only has quality drivers on Android 7, currently 0.7%, and GNU/Linux, currently 2% of the desktop market, as per Steam dashboard.

Windows 10 is at around 25% currently.

Re: Apple proposes new web 3D graphics API

#430
post #104

Earlier quoted context omitted.

> Why not use the one supported by Google, and MS, Vulkan? https://www.lunarg.com/faqs/microsoft-support-vulkan/ "Microsoft has not expressed intent to support Vulkan."

They don't need to support it, because the GPU vendors have done so in their drivers, so it works fine on Windows without Microsoft's assistance.

Not on UWP applications, which are the future.
Post reply on HN