> Besides, real Vulkan isn’t everywhere. More specifically, there are no drivers for Intel Haswell/Broadwell iGPUs on Windows, it’s forbidden on Windows UWP (including ARM), it’s below 50% on Android, and totally absent on macOS and iOS. Vulkan Portability aims to solve it, but it’s another fairly complex layer for your application, especially considering the shader translation logic of SPIRV-Cross, and it’s still a…
Vulkan is very successful as standards go, most never get near the coverage. But from the early days it was clear that MS and Apple will bet on their own proprietary APIs so the current situation is not news.
Point of WebGPU on Native
91–98 of 98 posts
Re: Point of WebGPU on Native
#92Earlier quoted context omitted.
That is definitely (mostly) true, but integrated engines like Unity or UE4 also heavily nudge you in doing things their way and come with a non-trivial size overhead (e.g. it is complete overkill to use Unity for your next Tetris clone). And let's be honest, if you sit beginners in front of Unity they don't learn programming, instead they learn "Unity problem solving", e.g. "Unity trivia" which is hardly applicable t…
I dunno. This is all so subjective. I don't think Day 1 of programming is about picking up programming. It's about seeing if there's going to be a Day 2-4. And if Unity isn't in the picture, they sure as fuck aren't going to be hearing about WebGPU for the first 3-5 years of their journey. Photoshop for game creation is a little bit loaded. I'll take it in good faith but point aggressively to how wrong you are becaus…
I agree with you, this is not the way to bring people up to speed with graphics programming.
Re: Point of WebGPU on Native
#93Earlier quoted context omitted.
Because hardware vendors don't want one. Lock-in when you are leading your particular niche gives big profits, so companies go for it. That is why Microsoft, Sony, NVIDIA, Apple, Xilinx, etc. create their own platforms and APIs.
> Because hardware vendors don't want one. Lock-in when you are leading your particular niche gives big profits, so companies go for it. Complete nonsense. All the hardware vendors except Apple support Vulkan and contributed towards it. NVIDIA hasn't created their own graphics API since... ever, actually. They have their own APIs, of course (cuda being an obvious one, but there's also NVAPI), but they don't do graphi…
Microsoft not only does not support Vulkan, ICD drivers aren't allowed in Win32 and UWP sandbox models.
NVidia designs their hardware in collaboration with Microsoft, giving first class support to DirectX, and only afterwards they port the features as extensions to Vulkan/OpenGL.
Latest two examples, Ray Tracing and MeshShaders.
Re: Point of WebGPU on Native
#94Earlier quoted context omitted.
Vulkan is very successful as standards go, most never get near the coverage. But from the early days it was clear that MS and Apple will bet on their own proprietary APIs so the current situation is not news.
Missing Sony and Nintendo (Switch main API is NVN) there.
Re: Point of WebGPU on Native
#95Earlier quoted context omitted.
That is definitely (mostly) true, but integrated engines like Unity or UE4 also heavily nudge you in doing things their way and come with a non-trivial size overhead (e.g. it is complete overkill to use Unity for your next Tetris clone). And let's be honest, if you sit beginners in front of Unity they don't learn programming, instead they learn "Unity problem solving", e.g. "Unity trivia" which is hardly applicable t…
I dunno. This is all so subjective. I don't think Day 1 of programming is about picking up programming. It's about seeing if there's going to be a Day 2-4. And if Unity isn't in the picture, they sure as fuck aren't going to be hearing about WebGPU for the first 3-5 years of their journey. Photoshop for game creation is a little bit loaded. I'll take it in good faith but point aggressively to how wrong you are becaus…
The under-the-hood technology in Unity is definitely bleeding edge, but the user-facing workflows aren't anymore, they simply cannot "revolutionize" their workflows again as they did a decade ago, because that would alienate their own user base. Being the "industry standard" also has its downsides.
Re: Point of WebGPU on Native
#96Web and client-side WebAPI has security first in mind. The conception of WASM and WebGPU is pushing Web into wider audiences and influence, taking up what used to be OS' market. On the OS side, Google the capability-based OS Fuchsia. Someone in Google understands that user's consent over their computation resource (file/directory, network) is more important than ever. And then there's WASI where it will enable OS to…
Capability-based systems have been a thing for decades but never took off for lack of interest and complexity. What I am missing is not a Web replacing operating systems, but better operating systems!
> What I am missing is not a Web replacing operating systems, but better operating systems!
But, that I cannot argue.
Re: Point of WebGPU on Native
#97Earlier quoted context omitted.
It is, but that won't do anything about overeager lawyers.
Lawyers know how to fight corporate entities. This tech doesn't have to be a corporate product. It could be a separate community repository somewhere, used only by those native gfx/wgpu users who opt into it.
Re: Point of WebGPU on Native
#98Earlier quoted context omitted.
You don't need to reset everything, only whatever you change. Yeah, other APIs allow you to keep the state pre-packaged and switch from what appears a single command, but the state is still there nevertheless. The full sync is a problem of how WebGL is provided. They could easily change it to allow parallel rendering as long it is to independent contexts.
I am not sure it is easy to change opengl to run parallelly given it all shares a global state. How do you not mess up anything when render two scene at same time if two pipeline shares the same variable but you want to fill it with different value? And if you really want to change it so hard to give pipelines standalone context. Why not use the webgpu? It seems just designed in a stateless way that I just described.