Musikia
@Musikia
Сити фермер

Как писать библиотеки для gui? Что нужно знать?

Начал изучать rust и появилась идея написать библиотеку для создания приложений, но не понимаю куда копать. Я так понял нужно связать rust и vulkan, opengl или directx?
  • Вопрос задан
  • 131 просмотр
Решения вопроса 1
VoidVolker
@VoidVolker
Разработчик ПО и IT-инженер
Геометрию, математику и 2D графику - это основы. Графический интерфейс рисуется с использованием простых графических примитивов: пиксель, линия, прямоугольник, овал и прочее, а так же с отрисовкой готовых изображений различных форматов - png, jpg, svg, шрифтов и прочее. В целом структура графического интерфейса примерно такая: есть основной виртуальный экран, куда отрисовываются элементы интерфейса (по сути массив пикселей), есть дерево элементов со своими свойствами (размер, цвета, примитивы, хэндлеры действий, события и прочее), у каждого элемента есть свой z-индекс, или расположение на виртуальном экране по высоте (т.е. один элемент рендерится поверх другого). Рендер всего экрана должен проводить вычисления где какой элемент располагается, как перекрывает собой элементы под ним, какие у него есть прозрачные пиксели, а так же взаимодействие пользовательского ввода со всеми элементами на виртуальном экране.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
TalismanChet
@TalismanChet
Лицо зла
1. молча (шутка);
2. нативную либу (будь то Х11, WinAPI, int 0x30 для KOS или ещё что похуже), работу с нодами и представление о работе гуя;
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы