Originally posted by totoz
View Post
Announcement
Collapse
No announcement yet.
Vulkan 1.3.284 Released With Another Extension To Help Zink
Collapse
X
-
Originally posted by totoz View PostBut they have to implement those extensions, which may be like implementing a legacy feature, no?
- Likes 7
Comment
-
Originally posted by totoz View PostBut they have to implement those extensions, which may be like implementing a legacy feature, no?
So, if they want to use Zink as an OpenGL layer, thereby having most of the work of a compliant OpenGL stack already written, they can focus on just the extensions that make it performant.
Now, for the big 3, Intel, AMD, and Nvidia, they can forgo this in their closed source drivers, for instance, as they already have compliant and performant OpenGL drivers made.
The Open Source Drivers tend to get everything feature, but that is still at the discretion of the developer.
Where might this be useful? In any of the mobile chips with included GPUs like the Pi and other devices, they can implement just the base layer to be compliant and run most software.
If they want that OpenGL layer, they can then just implement what Zink requires.
There are lots of other extensions that don't make sense on them, like that ones that make Wine faster with DXVK and friends, they may never implement.
- Likes 3
Comment
-
Originally posted by totoz View PostBut they have to implement those extensions, which may be like implementing a legacy feature, no?
OpenGL does a lot in the background, from very simple things such as error checking, compiling high-level shaders, to avoiding deletion of resources that are still used by the GPU (which operates asynchronously) or managing internal resource allocation and hardware cache flushing. Another example is the handling of out of memory situation, where the OpenGL driver implicitly splits up workloads or moves allocations between dedicated/system memory. This code now moves from the driver into the application domain.
So for a hardware developer POV, it's easier to support only Vulkan with some extension for OpenGL emulation, than a full featured OpenGL driver. Also, since OpenGL is more complex, compatibility layer like Zink is better, since it's a single software for various GPU vendors and simpler Vulkan drivers for each vendor, than a complex OpenGL driver for every GPU vendor. So in the future they can simply stop developing OpenGL and go full Vulkan.
- Likes 6
Comment
-
Originally posted by totoz View PostBut they have to implement those extensions, which may be like implementing a legacy feature, no?
(Yeah, I know much of the Win32 API is userland DLLs. The point remains. Wine and Zink can both be shared between multiple consumers, be they drivers or OSes.)
Comment
Comment