Apple's WebKit team proposes a new API for accelerating GPU-based 3D graphics

Apple's WebKit team has proposed a new Community Group at the World Wide Web Consortium (W3C) that will focus on developing a new standard API [application programming interface], perhaps based on Metal, for accelerating GPU-based 3D graphics and general computation for the web, notes AppleInsider

Metal is a low-level, low-overhead hardware-accelerated graphics and API.  With Metal, Apple hopes to replace the industry-standard 3D-graphics API called OpenGL, with its own development API.

WebKit is a layout engine software component for rendering web pages in web browsers. It powers Apple's Safari web browser.

Announced on Apple's WebKit blog, the new “GPU for the Web” Community Group will discuss a potential next-generation web graphics API that can better leverage modern GPUs. Here’s part of the message from the blog: 

“GPU technology has improved and new software APIs have been created to better reflect the designs of modern GPUs. These new APIs exist at a lower level of abstraction and, due to their reduced overhead, generally offer better performance than OpenGL. 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 what does this mean for the Web? These new technologies are clearly the next evolutionary step for content that can benefit from the power of the GPU. The success of the web platform requires defining a common standard that allows for multiple implementations, but here we have several graphics APIs that have nuanced architectural differences. In order to expose a modern, low-level technology that can accelerate graphics and computation, we need to design an API that can be implemented on top of many systems, including those mentioned above. With a broader landscape of graphics technologies, following one specific API like OpenGL is no longer possible.

“Instead we need to evaluate and design a new web standard that provides a core set of required features, an API that can be implemented on a mix of platforms with different system graphics technologies, and the security and safety required to be exposed to the Web.

“We also need to consider how GPUs can be used outside of the context of graphics and how the new standard can work in concert with other web technologies. The standard should expose the general-purpose computational functionality of modern GPUs. Its design should fit with established patterns of the Web, to make it easy for developers to adopt the technology. It needs to be able to work well with other critical emerging web standards like WebAssembly and WebVR. And most importantly, the standard should be developed in the open, allowing both industry experts and the broader web community to participate.”