Re:New Vulkan Documentation Website
by danielvaughn on Wednesday October 11, 2023 @10:10AM
(#37844625)
I'd heard about this, which I think added to my confusion. My general impression is that Vulkan, Metal, and WebGPU are all separate attempts at modernizing graphics, so they're all kind of related in some sense but they're also distinct and incompatible with each other. So graphics in general are moving away from the legacy OpenGL model (good), but it's also fragmenting (bad). Fair take or no?
[ Parent
| on HN ]
The moving away part is taking decade of slow and confusing but still huge progress indeed.
And as other have stated the absolutely CRUCIAL question in picking your API, is going to be :
what do you want to do ?
WebGPU is different because it's an abstraction of Vulkan, Metal or DX. Yes, the fragmenting is bad and annoying, WebGPU is the only graphics API that Apple agreed on and that would be truly natively cross-platform, but it's still new, lacking some features, and evolving.
> WebGPU is the only graphics API that Apple agreed on
It's was an API they and Firefox presented as a proposal for new graphics API. And it was Google who agreed to follow suit (they had their own proposal)
Re:New Vulkan Documentation Website
by dist-epoch on Wednesday October 11, 2023 @10:17AM
(#37844707)
Your average graphics developer is not supposed to use Vulkan/Metal/Direct3D directly, but through an engine.
So in a way it doesn't really matter what these low level APIs are like.
Vulkan, D3D12 and Metal all map to similar GPU hardware, so the basic concepts are also similar.
They mostly differ in details like 'programmer ergonomics', design philosophy, and of course platform-availability.
WebGPU is basically the cross section of those three native APIs.
Isn't WebGPU far closer to Metal than to Vulkan or D3D12?
The good parts are taken from Metal, and the bad parts (BindGroups) seem to be inspired by Vulkan ;)