|
@@ -367,7 +367,7 @@ void ImGui_ImplWGPU_RenderDrawData(ImDrawData* draw_data, WGPURenderPassEncoder
|
|
|
// Avoid rendering when minimized
|
|
|
int fb_width = (int)(draw_data->DisplaySize.x * draw_data->FramebufferScale.x);
|
|
|
int fb_height = (int)(draw_data->DisplaySize.y * draw_data->FramebufferScale.y);
|
|
|
- if (fb_width <= 0 || fb_height <= 0 || draw_data->CmdListsCount == 0)
|
|
|
+ if (fb_width <= 0 || fb_height <= 0 || draw_data->CmdLists.Size == 0)
|
|
|
return;
|
|
|
|
|
|
// Catch up with texture updates. Most of the times, the list will have 1 element with an OK status, aka nothing to do.
|
|
@@ -442,9 +442,8 @@ void ImGui_ImplWGPU_RenderDrawData(ImDrawData* draw_data, WGPURenderPassEncoder
|
|
|
// Upload vertex/index data into a single contiguous GPU buffer
|
|
|
ImDrawVert* vtx_dst = (ImDrawVert*)fr->VertexBufferHost;
|
|
|
ImDrawIdx* idx_dst = (ImDrawIdx*)fr->IndexBufferHost;
|
|
|
- for (int n = 0; n < draw_data->CmdListsCount; n++)
|
|
|
+ for (const ImDrawList* draw_list : draw_data->CmdLists)
|
|
|
{
|
|
|
- const ImDrawList* draw_list = draw_data->CmdLists[n];
|
|
|
memcpy(vtx_dst, draw_list->VtxBuffer.Data, draw_list->VtxBuffer.Size * sizeof(ImDrawVert));
|
|
|
memcpy(idx_dst, draw_list->IdxBuffer.Data, draw_list->IdxBuffer.Size * sizeof(ImDrawIdx));
|
|
|
vtx_dst += draw_list->VtxBuffer.Size;
|
|
@@ -471,9 +470,8 @@ void ImGui_ImplWGPU_RenderDrawData(ImDrawData* draw_data, WGPURenderPassEncoder
|
|
|
int global_idx_offset = 0;
|
|
|
ImVec2 clip_scale = draw_data->FramebufferScale;
|
|
|
ImVec2 clip_off = draw_data->DisplayPos;
|
|
|
- for (int n = 0; n < draw_data->CmdListsCount; n++)
|
|
|
+ for (const ImDrawList* draw_list : draw_data->CmdLists)
|
|
|
{
|
|
|
- const ImDrawList* draw_list = draw_data->CmdLists[n];
|
|
|
for (int cmd_i = 0; cmd_i < draw_list->CmdBuffer.Size; cmd_i++)
|
|
|
{
|
|
|
const ImDrawCmd* pcmd = &draw_list->CmdBuffer[cmd_i];
|