diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/vulkan/radv_cmd_buffer.c index 8b5010df708..4be89df5504 100644 --- a/src/amd/vulkan/radv_cmd_buffer.c +++ b/src/amd/vulkan/radv_cmd_buffer.c @@ -5662,12 +5662,15 @@ void radv_CmdDraw( uint32_t firstInstance) { RADV_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer); - struct radv_draw_info info = {0}; + struct radv_draw_info info; info.count = vertexCount; info.instance_count = instanceCount; info.first_instance = firstInstance; info.vertex_offset = firstVertex; + info.strmout_buffer = NULL; + info.indirect = NULL; + info.indexed = false; radv_draw(cmd_buffer, &info); } @@ -5681,7 +5684,7 @@ void radv_CmdDrawIndexed( uint32_t firstInstance) { RADV_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer); - struct radv_draw_info info = {0}; + struct radv_draw_info info; info.indexed = true; info.count = indexCount; @@ -5689,6 +5692,8 @@ void radv_CmdDrawIndexed( info.first_index = firstIndex; info.vertex_offset = vertexOffset; info.first_instance = firstInstance; + info.strmout_buffer = NULL; + info.indirect = NULL; radv_draw(cmd_buffer, &info); } @@ -5702,12 +5707,15 @@ void radv_CmdDrawIndirect( { RADV_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer); RADV_FROM_HANDLE(radv_buffer, buffer, _buffer); - struct radv_draw_info info = {0}; + struct radv_draw_info info; info.count = drawCount; info.indirect = buffer; info.indirect_offset = offset; info.stride = stride; + info.strmout_buffer = NULL; + info.count_buffer = NULL; + info.indexed = false; radv_draw(cmd_buffer, &info); } @@ -5721,13 +5729,15 @@ void radv_CmdDrawIndexedIndirect( { RADV_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer); RADV_FROM_HANDLE(radv_buffer, buffer, _buffer); - struct radv_draw_info info = {0}; + struct radv_draw_info info; info.indexed = true; info.count = drawCount; info.indirect = buffer; info.indirect_offset = offset; info.stride = stride; + info.count_buffer = NULL; + info.strmout_buffer = NULL; radv_draw(cmd_buffer, &info); } @@ -5744,7 +5754,7 @@ void radv_CmdDrawIndirectCount( RADV_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer); RADV_FROM_HANDLE(radv_buffer, buffer, _buffer); RADV_FROM_HANDLE(radv_buffer, count_buffer, _countBuffer); - struct radv_draw_info info = {0}; + struct radv_draw_info info; info.count = maxDrawCount; info.indirect = buffer; @@ -5752,6 +5762,8 @@ void radv_CmdDrawIndirectCount( info.count_buffer = count_buffer; info.count_buffer_offset = countBufferOffset; info.stride = stride; + info.strmout_buffer = NULL; + info.indexed = false; radv_draw(cmd_buffer, &info); } @@ -5768,7 +5780,7 @@ void radv_CmdDrawIndexedIndirectCount( RADV_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer); RADV_FROM_HANDLE(radv_buffer, buffer, _buffer); RADV_FROM_HANDLE(radv_buffer, count_buffer, _countBuffer); - struct radv_draw_info info = {0}; + struct radv_draw_info info; info.indexed = true; info.count = maxDrawCount; @@ -5777,6 +5789,7 @@ void radv_CmdDrawIndexedIndirectCount( info.count_buffer = count_buffer; info.count_buffer_offset = countBufferOffset; info.stride = stride; + info.strmout_buffer = NULL; radv_draw(cmd_buffer, &info); } @@ -7214,13 +7227,17 @@ void radv_CmdDrawIndirectByteCountEXT( { RADV_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer); RADV_FROM_HANDLE(radv_buffer, counterBuffer, _counterBuffer); - struct radv_draw_info info = {0}; + struct radv_draw_info info; + info.count = 0; + info.vertex_offset = 0; info.instance_count = instanceCount; info.first_instance = firstInstance; info.strmout_buffer = counterBuffer; info.strmout_buffer_offset = counterBufferOffset; info.stride = vertexStride; + info.indexed = false; + info.indirect = NULL; radv_draw(cmd_buffer, &info); }