mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-05 00:20:11 +01:00
zink: document scalarBlockLayout requirement
We're currently using uint arrays instead of uvec4 arrays for UBOs and SSBOs, which requires scalarBlockLayout. Fixing this is a lot of work, so let's just document it for now. Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10127>
This commit is contained in:
parent
6a2ee3b17c
commit
6940d3ba05
3 changed files with 10 additions and 0 deletions
|
|
@ -41,6 +41,9 @@ Here's a list of those requirements:
|
|||
In addition to this, `VK_KHR_external_memory`_ is required to support the
|
||||
DRI code-path.
|
||||
|
||||
We also require either the `VK_EXT_scalar_block_layout`_ extension or
|
||||
Vulkan 1.2, with the ``scalarBlockLayout`` feature.
|
||||
|
||||
OpenGL 3.0
|
||||
^^^^^^^^^^
|
||||
|
||||
|
|
@ -251,6 +254,7 @@ questions, don't hesitate to visit `#zink on FreeNode
|
|||
|
||||
.. _VK_KHR_maintenance1: https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_maintenance1.html
|
||||
.. _VK_KHR_external_memory: https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_KHR_external_memory.html
|
||||
.. _VK_EXT_scalar_block_layout: https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_scalar_block_layout.html
|
||||
.. _VK_EXT_transform_feedback: https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_transform_feedback.html
|
||||
.. _VK_EXT_conditional_rendering: https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_conditional_rendering.html
|
||||
.. _VK_EXT_vertex_attribute_divisor: https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_vertex_attribute_divisor.html
|
||||
|
|
|
|||
|
|
@ -131,6 +131,10 @@ EXTENSIONS = [
|
|||
Extension("VK_EXT_4444_formats",
|
||||
alias="format_4444",
|
||||
features=True),
|
||||
Extension("VK_EXT_scalar_block_layout",
|
||||
alias="scalar_block_layout",
|
||||
features=True,
|
||||
conditions=["$feats.scalarBlockLayout"]),
|
||||
]
|
||||
|
||||
# constructor: Versions(device_version(major, minor, patch), struct_version(major, minor))
|
||||
|
|
|
|||
|
|
@ -1423,6 +1423,8 @@ check_base_requements(struct zink_screen *screen)
|
|||
!screen->info.feats.features.largePoints ||
|
||||
!screen->info.feats.features.alphaToOne ||
|
||||
!screen->info.feats.features.shaderClipDistance ||
|
||||
!(screen->info.feats12.scalarBlockLayout ||
|
||||
screen->info.have_EXT_scalar_block_layout) ||
|
||||
!screen->info.have_KHR_maintenance1) {
|
||||
fprintf(stderr, "WARNING: The Vulkan device doesn't support "
|
||||
"the base Zink requirements, some incorrect rendering "
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue