It’s been a very long week for me, and I’m only just winding down now after dissecting and resolving a crazy fp64/ssbo bug. I’m too scrambled to jump into any code, so let’s just do another fluff day and review happenings in mainline mesa which relate to zink.
Thanks to the tireless, eagle-eyed reviewing of Erik Faye-Lund, a ton of zink patches out of
zink-wip have landed this week. Here’s an overview of that in backwards historical order:
- ARB_sample_shading, a core feature for GL 4.0
- ARB_draw_indirect, another core feature for GL 4.0
- version updates which mean zink now fully supports GL 3.3
- geometry shaders, a core feature of GL 3.3
- stencil wrap fixes which fix at least one unit test (thanks to Eric Anholt for an impressively speedy review on this one)
- missing ARB_vertex_type_2_10_10_10_rev format types which complete the requirements for the core GL 3.3 feature
- ARB_texture_buffer_object, a core GL 3.1 feature
- ntv variable refactoring to reduce code duplication in the future
- documentation from Erik himself which improves and updates the page here
- ntv slot remapping improvements to reduce the overhead of GL builtin variable compatibility and maximize the number of variable slots available to users
- pipe caps for maximum varying counts
- resource synchronization which will finally ensure that we can wait on operations to finish when appropriate and/or just determine resource usage when necessary
- stop erroneously reporting ssbos as supported from Erik to hopefully stop us from running so many ssbo-related tests until support has actually landed
- setup handling for all Vulkan extensions so that now there’s no more MRs necessary to start landing patches for these features
Zink has grown tremendously over the past day or so of MRs landing, going from GLSL 1.30 and GL 3.0 to GLSL and GL 3.30.
It can even run Blender now. Unless you’re running it under Wayland.