4 ms·
OpenGL is recommended to get started and learn the base concept then if you survive that you can try Vulkan. Will Vulkan replace everything? Seems unlikely con
by qiine 3y ago
OpenGL is recommended to get started and learn the base concept then if you survive that you can try Vulkan.
Will Vulkan replace everything? Seems unlikely considering Microsoft is not dropping DirectX anytime soon, and apple pretty much despise The khronos group, while the web seems to want to go the WebGPU route now.
And openGL seems to simply not die.
- danielvaughn 3y agoI'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?
- dist-epoch 3y agoYour 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.
- TheRoque 3y agoWebGPU 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.
- troupo 3y ago> 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)
- qiine 3y agoThe 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 ?
- flohofwoe 3y agoVulkan, 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.
- hajile 3y agoIsn't WebGPU far closer to Metal than to Vulkan or D3D12?
- flohofwoe 3y ago> OpenGL is recommended to get started and learn the base concept IMHO learning OpenGL today just fills your head with outdated concepts, the API is much more confusing than it should be, and error reporting is non-existent. At least more modern APIs tell you exactly what you did wrong in their validation layers.
- mardifoufs 3y agoI don't think OpenGL and vulkan are interchangeable in this case. I wouldn't really recommend a beginner to start with vulkan. Yes, OpenGL might have some "outdated" concepts compared to vulkan but I don't think throwing someone directly to vulkan is more productive! Plus, tutorials and in depth guides are much much more common on OpenGL, but that's probably a chicken/egg type of situation.
- flohofwoe 3y agoYeah both options are bad for beginners, at least for cross-platform 3D APIs (e.g. D3D11 and Metal are both nicely balanced and well-designed 3D APIs, but restricted to Windows or macOS). As other have said, WebGPU is probably the best cross-platform option right now. (also IME the tricky thing with GL information on the web is that there's a lot of really outdated and sometimes conflicting information around - e.g. worst case is you end up with code that mixes old and new GL concepts without realizing what's what)
- cyber_kinetist 3y agoI wonder if using your library (https://github.com/floooh/sokol https://github.com/floooh/sokol) instead of OpenGL will alleviate some of these issues for newcomers! There's already a sokol port of the learnopengl.com code (https://github.com/GeertArien/learnopengl-examples https://github.com/GeertArien/learnopengl-examples), so it shouldn't be too hard to match between the tutorial articles and these.
- dotnet00 3y agoOpenGL is not dying only in the sense that vendors and Linux want to keep support around for legacy reasons and applications which don't need to be all that carefully optimized. It is pretty much dead otherwise, as it hasn't received any meaningful updates and extensions in a while exposing the myriad of features that newer GPUs have made available in Vulkan.
- troupo 3y ago> and apple pretty much despise The khronos group Is there anyone who doesn't despise the Khronos Group? Meanwhile Vulkan is supported by Android, Nintendo Switch, Linux. Windows, Apple Platforms, Xbox, PlayStation (aka where money for developers is) couldn't care less about Vulkan.