3 ms·
How are you planning to tackle the GPU API differences?
by kvark 3y ago
How are you planning to tackle the GPU API differences?
- 1propionyl 3y ago(Not OP) These days that's a lot less of a concern than it used to be. It is a lot of up-front work to facade e.g. Metal, Vulkan (and even D3D12) but it's much much much easier than back in OpenGL vs D3D9/10 days. Most of the general concepts are more or less the same across them all these days. The "shapes" of the APIs are very similar. A texture is a texture is a texture. Same for a vertex/index/uniform buffer, vertex/fragment/compute shaders (notably not geometry, but you can just use compute), etc.
- 6gvONxR4sf7o 3y agoI'm not in the graphics world at all, but I read this lively discussion last week (post [0], discussion [1]) that made me think the situation was pretty messy. Is it maybe not as bad as that makes it appear? [0] https://www.carette.xyz/posts/we_are_doomed/ https://www.carette.xyz/posts/we_are_doomed/ [1] https://news.ycombinator.com/item?id=38994780 https://news.ycombinator.com/item?id=38994780
- raphlinus 3y agoI'd recommend wgpu. It should be a fairly easy migration from Metal, as Apple has been actively involved in the design, and there are similar concerns for developer experience (unlike, say, Vulkan). Unfortunately, graphics is in many ways the easy part. Really excellent integration with system menus, preferences, keyboard, input method editing, all have more variation across platforms and a still-evolving story of solid Rust abstractions. Lately, we've decided to try joining forces with the winit project to see if we can get those problems solved well.