Live data from Hacker News

Apple proposes new web 3D graphics API

webkit.org

261–270 of 650 posts

Re: Apple proposes new web 3D graphics API

#261

Earlier quoted context omitted.

> As soon as you clear up that GPU bottleneck guess what's going to be your next one? Memory bandwidth for your textures, geometry, and other data, quite often. Or nothing at all, if you can successfully reach your desired target framerate. But if CPU turns out to be an issue, that's what WebAssembly is for.

> Memory bandwidth for your textures, geometry, and other data, quite often. So in other words a GPU bottleneck?

No, a memory bottleneck. (That may be GPU memory or system memory, depending on the architecture of your graphics stack.) That's not the same as a GPU processing bottleneck. You can have a bottleneck in GPU processing, or a bottleneck in getting enough data to the GPU.

Re: Apple proposes new web 3D graphics API

#262
post #59

Earlier quoted context omitted.

As soon as you clear up that GPU bottleneck guess what's going to be your next one? (Here's a hint, it's the thing that's dispatching to your GPU). Another aspect that scares me about this is the security implications of exposing compute to the browser. Esp when you start talking about unified memory architectures. There's been more than a few exploits from a clever soul calling glReadPixels in the right circumstance…

Modern graphics APIs help you reduce the CPU bottleneck for CPU-bound graphics code. Parallelism, command buffers and generally thinner drivers all help reduce the CPU overhead.

Exactly. They also help you keep the GPU saturated, and minimize round-trips between the GPU and CPU.

Re: Apple proposes new web 3D graphics API

#263

Earlier quoted context omitted.

Why are they so hostile to Vulkan and what problems does Vulkan, which is vendor independent and open, have that adding a new API to support to the pile would not?

NIAA. Not Invented At Apple.

It's not even that. They seem to have abandoned OpenCL as well, and that was invented at Apple.

Re: Apple proposes new web 3D graphics API

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

> Apple supporting Vulkan on macOS and iOS wouldn't do anything to expose a new GPU API to the web. They are totally orthogonal. The web GPU API and the lower-level API aren't "totally orthogonal" if you're using the Metal shader language in your web GPU API! You're trying get web authors to use (a part of) Metal! It's totally not orthogonal.

The Metal Shader Language use in our prototype is totally a placeholder, and the post says so. We expect the standards process to define new source and binary representations, possibly based on Khronos's SPIR-V.

The shader language is partly independent of the API though, and we though the API was the interesting thing to prototype, more so than shaders.

Re: Apple proposes new web 3D graphics API

#265
post #253
post #170

Earlier quoted context omitted.

http://iswebrtcreadyyet.com/ Obviously Safari wouldn't matter if Apple allowed other browsers on iOS, but no, they insist on dragging the whole Internet a few years behind.

Except they allow other browsers on iOS.

no they don't, you can skin webkit but that's not allowing other browsers.

Re: Apple proposes new web 3D graphics API

#266

Earlier quoted context omitted.

> Apple allows you to provide an alternative API on OSX I'll need a source for this claim considering that no driver-level Vulkan implementations are available on macOS.

No. Provide a source that Apple actively prevents it. Developers can ask users for their admin password, sudo to root and largely do whatever they want including adding kernel extensions and drivers.

kext's must be signed now, Apple can freely revoke developer certs and block them if they so desire.

Re: Apple proposes new web 3D graphics API

#267
post #139

Earlier quoted context omitted.

As it happens, OpenGL was so high level that supporting it on top of DirectX was feasible. A number of Windows browsers use the DirectX back end to ANGLE, so users don't have to download OpenGL drives. Unfortunately, that doesn't work as well for Vulkan. Vulkan is the lowest-level of the three APIs, so it's hard to support on top of Metal or DirectX 12.

Since WebGL was released, Microsoft has demonstrated a new willingness to support Web graphics. They joined Khronos, and now ship a WebGL implementation of their own with Windows . I have confidence that if the industry moved toward a WebVulkan standard that this new Microsoft would make platform changes to better support it. Unfortunately I have no such confidence about Apple.

Why don't you ask Microsoft what they think about this proposal instead of speculating?

Re: Apple proposes new web 3D graphics API

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

What does "unofficial" mean here? AFAIK Vulkan is fully supported by the current versions of both AMD and Nvidia's Windows drivers, which seems about as official as a driver can get.

Re: Apple proposes new web 3D graphics API

#269
post #184
post #51

Earlier quoted context omitted.

We're committed to abiding by the W3C Patent Policy for this spec.

That's a positive thing, but the whole effort looks like an indirect attempt to push Metal, without making it open itself. What about shader tools and etc.? Are there any open ones for Metal? IMHO if anything like that should be created, it should be based on open APIs.

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.

Re: Apple proposes new web 3D graphics API

#270
post #100

Earlier quoted context omitted.

xbox

Concrete example: The PS4 dashboard is actually WebGL via Chromium ( https://www.youtube.com/watch?v=sIhtcUvi0BQ&t=55m25s ) I don't think PS4 supports OpenGL, DX or Vulkan. Sony has their own API.

Sony has historically supported a variant of OpenGL on the PS3 (in addition to their low level API) - I would be surprised if they don't have one for the PS4.
Post reply on HN