void draw_3d_circle(ImDrawList* dl, Vector pos, float rad, ImVec4 clr) { Vector enpos; float screen[2], screen2[2]{}; float step = M_PI * 2.f / 2047; enpos.x = rad * cos(rot) + pos.x; enpos.y = rad * sin(rot) + pos.y; enpos.z = pos.z; Vector2D scr = functions_helper::WorldToScreen(Vector(enpos.x, enpos.y, enpos.z)); if (scr.x && screen2[0] != 0) { dl->AddLine(ImVec2(scr.x, scr.y), ImVec2(screen2[0], screen2[1]), ImGui::GetColorU32(clr), 15.f); } screen2[0] = scr.x; screen2[1] = scr.y; }}
...
draw_3d_circle(ImGui::GetBackgroundDrawList(), local.GetAbsOrigin(), 70, ImVec4(1.0f, 1.0f, 1.0f, 1.0f));