lavapipe: handle buffer sizes better in CmdBindTransformFeedbackBuffersEXT
according to spec, the pSizes array member is only used if the array is non-null and the value is not VK_WHOLE_SIZE, otherwise this value is calculated based on the buffer size - the offset Reviewed-by: Dave Airlie <airlied@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10625>
This commit is contained in:
committed by
Marge Bot
parent
dbdd4bd9e9
commit
4b28ed0d7b
@@ -1681,7 +1681,10 @@ VKAPI_ATTR void VKAPI_CALL lvp_CmdBindTransformFeedbackBuffersEXT(
|
||||
for (unsigned i = 0; i < bindingCount; i++) {
|
||||
cmd->u.bind_transform_feedback_buffers.buffers[i] = lvp_buffer_from_handle(pBuffers[i]);
|
||||
cmd->u.bind_transform_feedback_buffers.offsets[i] = pOffsets[i];
|
||||
cmd->u.bind_transform_feedback_buffers.sizes[i] = pSizes[i];
|
||||
if (pSizes && pSizes[i] != VK_WHOLE_SIZE)
|
||||
cmd->u.bind_transform_feedback_buffers.sizes[i] = pSizes[i];
|
||||
else
|
||||
cmd->u.bind_transform_feedback_buffers.sizes[i] = cmd->u.bind_transform_feedback_buffers.buffers[i]->size - pOffsets[i];
|
||||
}
|
||||
cmd_buf_queue(cmd_buffer, cmd);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user