summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/util/u_screen.c
diff options
context:
space:
mode:
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>2022-04-13 16:32:04 -0400
committerMarge Bot <emma+marge@anholt.net>2022-04-21 02:29:09 +0000
commit0f28da9cd4779f705ebe18061e98e9e53be5c1ff (patch)
tree6b3fd050663e18f2f579f1ce87af44ce0076d836 /src/gallium/auxiliary/util/u_screen.c
parentec124916206fbae63ee9e3c2c73de8255c807c98 (diff)
gallium: add PIPE_CAP_MULTI_DRAW_INDIRECT_PARTIAL_STRIDE
GL spec states that the stride for indirect multidraws: * cannot be negative * can be zero * must be a multiple of 4 some drivers can't support strides which are not a multiple of the size of the indirect struct being used, however, so rewrite those to direct draws Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15963>
Diffstat (limited to 'src/gallium/auxiliary/util/u_screen.c')
-rw-r--r--src/gallium/auxiliary/util/u_screen.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gallium/auxiliary/util/u_screen.c b/src/gallium/auxiliary/util/u_screen.c
index 617a9dbf38a..6ab60a639e7 100644
--- a/src/gallium/auxiliary/util/u_screen.c
+++ b/src/gallium/auxiliary/util/u_screen.c
@@ -253,6 +253,8 @@ u_pipe_screen_get_param_defaults(struct pipe_screen *pscreen,
case PIPE_CAP_FS_POINT_IS_SYSVAL:
case PIPE_CAP_FS_FACE_IS_INTEGER_SYSVAL:
return 0;
+ case PIPE_CAP_MULTI_DRAW_INDIRECT_PARTIAL_STRIDE:
+ return 1;
case PIPE_CAP_SHADER_BUFFER_OFFSET_ALIGNMENT:
/* Enables GL_ARB_shader_storage_buffer_object */