Подпишитесь на наш Telegram-канал, чтобы всегда быть в курсе важных обновлений! Перейти

Вопрос Как нарисовать круг в Дх11

  • Автор темы Автор темы Dimedrol
  • Дата начала Дата начала
наверн не буду тебя дергать больше, ну я правда не могу объяснить человеку, что из-за 1.5 инвалидов, которые до сих пор не перешли хотя бы на с++17 плохо иметь столько легаси кода
Я понимаю, что легаси код это не круто, сам сейчас работаю исключительно на C++20, но опять таки - в доминирующем количестве крупных компаний, работающих с плюсами не используются современные стандарты, просто потому что они уже заложники легаси кода и им придется потратить огромное количество денег и человеческих ресурсов, чтобы переписать весь их легаси код под современные стандарты, разработчик имгуи нацелен же на то, чтобы у него было как можно больше спонсоров(и его нельзя за это упрекать, любой труд должен быть оплачен)
 
ну код имгуи очень костыльный и не соответствует современными стандартам с++. например, в местах где можно было использовать реализации из стандартной библиотеки, придумываются свои врапперы
Пожалуйста, авторизуйтесь для просмотра ссылки.

код захламлен различными глобальными переменными и функциями
Пожалуйста, авторизуйтесь для просмотра ссылки.

ну и различные функции постоянно используют всякие магические числа, вместо нормальной реализации, который будет решать эти проблемы
Пожалуйста, авторизуйтесь для просмотра ссылки.

про юи, инпут говорить не приходится, как и про всякие мелочи, как typedef'ы вместо using, typedef int для енумов, вместо нормального менеджмента файлов, NULL вместо nullptr
Ну и юзай свой директх икс 11, а мы мужики будем юзать имгуе с говном внутри кода, матеря всех и вся из за того, что не умеем рисовать на дх11!!!
 
Ответь за свои слова.
Хорошо, объясняю проще.
Сейчас уже никто не рисует напрямую, писать код всей геометрии (фигур) для разных бэкэндов (DX9,DX11,VK,етц) это пустая трата времени.
Гораздо более правильным будет построить универсальную систему, и писать реализации под конечные бэкэнды, чтобы интерфейс и логика построения геометрии были общими, но сама отрисовка реализовывалась отдельно.
Самый оптимальный вариант рисовать текстурированными треугольниками (полигонами), с их помощью можно построить двухмерную геометрию любой сложности, абсолютно все фигуры и текст в том числе.
KN4CK3R в своем OSHGui пытался реализовать подобную схему, но сделал ошибку пытаясь рисовать квадратами вместо треугольников, а тот же код круга у него вообще сделан закрашиванием пикселей, что супермедленно.
Советую посмотреть в сторону IMGUI, там реализовано все что нужно для отрисовки (сам гуй не трогай).
 
Если актуально, то круг можно нарисовать таким образом
C++:
Expand Collapse Copy
ImGui::GetBackgroundDrawList()->AddCircle(ImVec2(100, 100), 100, ImColor(255, 0, 0));
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Если актуально, то круг можно нарисовать таким образом
C++:
Expand Collapse Copy
ImGui::GetBackgroundDrawList()->AddCircle(ImVec2(100, 100), 100, ImColor(255, 0, 0));
Если прочитать все ответы, то это не подходит.
 
Назад
Сверху Снизу