3 ms·
The discussion about Apple not supporting Vulkan is irrelevant because the point of this Webkit proposal is replacing WebGL 2 for web applications, not replacin
by HelloNurse 10y ago
The discussion about Apple not supporting Vulkan is irrelevant because the point of this Webkit proposal is replacing WebGL 2 for web applications, not replacing the sadly fragmented "real" GPU APIs for native applications.
As a WebGL replacement and as a 3D API in general, many
details of the proposal are strange.
>Since we were building on Apple platforms we picked the Metal Shading Language.
Mature and portable technology...
>pipelineDescriptor.colorAttachments[0].pixelFormat = "BGRA8Unorm";
No enumerations? Are they going to validate strings?
>let vertexData = new Float32Array([ /* some data */ ]);
>let vertexBuffer = gpu.createBuffer(vertexData);
>commandEncoder.setVertexBuffer(vertexBuffer, 0, 0);
No internal structure?
>commandEncoder.drawPrimitives("triangle", 0, 3);
One triangle? No index buffers?
I don't understand whether they are offering an insultingly dumbed down overview of a rather complete (but presumably ugly) proof of concept implementation or throwing around gratuitously WebGL-incompatible ideas to dominate the standardization process.
- om2 10y agoIt's really hard to make the example complex enough for experts without completely losing most people. This is deliberately a simple example. The string thing is the way enums tend to be done in modern JS APIs. It's not really a bottleneck but if it turned out to be, we'd go a different way.