Fixed a BestPractices warning for PushConstants & vkCreateCommandPool-command-buffer-reset

This commit is contained in:
JoshBot-Debug 2026-01-23 22:31:05 +05:30
parent f89ef40cb2
commit 138078fc42

View File

@ -529,14 +529,14 @@ static void ImGui_ImplVulkan_SetupRenderState(ImDrawData* draw_data, VkPipeline
// Setup scale and translation:
// Our visible imgui space lies from draw_data->DisplayPps (top left) to draw_data->DisplayPos+data_data->DisplaySize (bottom right). DisplayPos is (0,0) for single viewport apps.
{
float scale[2];
scale[0] = 2.0f / draw_data->DisplaySize.x;
scale[1] = 2.0f / draw_data->DisplaySize.y;
float translate[2];
translate[0] = -1.0f - draw_data->DisplayPos.x * scale[0];
translate[1] = -1.0f - draw_data->DisplayPos.y * scale[1];
vkCmdPushConstants(command_buffer, bd->PipelineLayout, VK_SHADER_STAGE_VERTEX_BIT, sizeof(float) * 0, sizeof(float) * 2, scale);
vkCmdPushConstants(command_buffer, bd->PipelineLayout, VK_SHADER_STAGE_VERTEX_BIT, sizeof(float) * 2, sizeof(float) * 2, translate);
float constants[4];
// Scale
constants[0] = 2.0f / draw_data->DisplaySize.x;
constants[1] = 2.0f / draw_data->DisplaySize.y;
// Translate
constants[2] = -1.0f - draw_data->DisplayPos.x * constants[0];
constants[3] = -1.0f - draw_data->DisplayPos.y * constants[1];
vkCmdPushConstants(command_buffer, bd->PipelineLayout, VK_SHADER_STAGE_VERTEX_BIT, 0, sizeof(float) * 4, constants);
}
}
@ -1830,7 +1830,7 @@ void ImGui_ImplVulkanH_CreateOrResizeWindow(VkInstance instance, VkPhysicalDevic
VkCommandPoolCreateInfo pool_info = {};
pool_info.sType = VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO;
pool_info.queueFamilyIndex = queue_family;
pool_info.flags = VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT;
pool_info.flags = VK_COMMAND_POOL_CREATE_TRANSIENT_BIT;
VkResult err = vkCreateCommandPool(device, &pool_info, allocator, &command_pool);
check_vk_result(err);