MCPcopy Create free account
hub / github.com/RenderKit/embree / SetupViewportDrawData

Function SetupViewportDrawData

tutorials/common/imgui/imgui.cpp:5005–5023  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

5003}
5004
5005static void SetupViewportDrawData(ImGuiViewportP* viewport, ImVector<ImDrawList*>* draw_lists)
5006{
5007 ImGuiIO& io = ImGui::GetIO();
5008 ImDrawData* draw_data = &viewport->DrawDataP;
5009 draw_data->Valid = true;
5010 draw_data->CmdLists = (draw_lists->Size > 0) ? draw_lists->Data : NULL;
5011 draw_data->CmdListsCount = draw_lists->Size;
5012 draw_data->TotalVtxCount = draw_data->TotalIdxCount = 0;
5013 draw_data->DisplayPos = viewport->Pos;
5014 draw_data->DisplaySize = viewport->Size;
5015 draw_data->FramebufferScale = io.DisplayFramebufferScale;
5016 for (int n = 0; n < draw_lists->Size; n++)
5017 {
5018 ImDrawList* draw_list = draw_lists->Data[n];
5019 draw_list->_PopUnusedDrawCmd();
5020 draw_data->TotalVtxCount += draw_list->VtxBuffer.Size;
5021 draw_data->TotalIdxCount += draw_list->IdxBuffer.Size;
5022 }
5023}
5024
5025// Push a clipping rectangle for both ImGui logic (hit-testing etc.) and low-level ImDrawList rendering.
5026// - When using this function it is sane to ensure that float are perfectly rounded to integer values,

Callers 1

RenderMethod · 0.85

Calls 1

_PopUnusedDrawCmdMethod · 0.80

Tested by

no test coverage detected