Отправляет email-рассылки с помощью сервиса Sendsay
Открытая группа
27 участников
Администратор Legotckoi
Модератор ProgrammersBlog

Последние откомментированные темы:

20250424074759

←  Предыдущая тема Все темы Следующая тема →
пишет:

QML - Урок 032. Создаём Custom QuickItem из C++ с использованием средств OpenGL

QQuickItemQQuickPaintedItemQMLQtC++

В уроке 024 я показал пример создания кастомного объекта QML в С++ с помощью QQuickPaintedItem , который имеет метод paint() , а в этом методе paint можно отрисовывать как на графической сцене необходимые объекты с помощью объекта класса QPainter . Разработчики, которые активно работали с методами отрисовки у виджетов, а также с кастомизацией и делегатами в классических виджетах, не увидят ничего принципиально нового при использовании метода paint().

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

А вот новый подход с использованием метода updatePaintNode(), который использует средства OpenGL и соответственно обращается к графической системе ПК, является рекомендуемым, а также значительно более производительным, чем устаревший метод.

Предлагаю повторить пример из урока 024, чтобы увидеть разницу в коде и получить следующий результат.

Читать далее

Это интересно
0

17.11.2017
Пожаловаться Просмотров: 365  
←  Предыдущая тема Все темы Следующая тема →


Комментарии временно отключены