Адаптация Qt Quick для программного рендеринга
Адаптация для программного рендеринга — это альтернативный рендерер для Qt Quick 2, использующий растровый движок для рендеринга содержимого графа сцены вместо OpenGL. В результате отсутствия использования OpenGL для рендеринга графа сцены некоторые функции и оптимизации больше недоступны. Большинство приложений Qt Quick 2 будут работать без изменений, хотя любые попытки использовать неподдерживаемые функции будут игнорироваться. Используя адаптацию для программного рендеринга, можно запускать приложения Qt Quick 2 на оборудовании и платформах, не поддерживающих OpenGL.
Адаптация для программного рендеринга ранее была известна как рендерер Qt Quick 2D. Однако, в отличие от 2D рендерера, новая интегрированная версия поддерживает частичные обновления. Это означает, что теперь избегается полное обновление содержимого окна или экрана, и обновляются только изменённые области. Это может значительно улучшить производительность многих приложений.
Эффекты шейдеров
Компоненты ShaderEffect в QtQuick 2 не могут быть отрисованы с помощью адаптации для программного рендеринга.
Модуль Qt Graphical Effects
Qt Graphical Effects использует элементы ShaderEffect для рендеринга эффектов. Если вы используете графические эффекты из этого модуля, то не следует скрывать исходный элемент, чтобы исходный элемент всё ещё мог быть отрисован.
Эффекты частиц
Невозможно отобразить эффекты частиц с помощью адаптации для программного рендеринга. По возможности, полностью удаляйте частицы из сцены. В противном случае они всё ещё потребуют некоторой обработки, даже если они не видны.
Отрисовка текста
Отрисовка текста с помощью адаптации для программного рендеринга основана на растровой отрисовке и не так хорошо реагирует на такие преобразования, как масштабирование, как при использовании OpenGL. Качество аналогично выбору Text.NativeRendering с элементами Text.
Qt Multimedia VideoOutput
Элемент VideoOutput модуля Qt Multimedia не поддерживается с адаптацией для программного рендеринга. Это связано с тем, что VideoOutput использует элемент QVideoRendererControl, который требует пользовательского поведения QSGGeometryNode, присутствующего только в стандартной адаптации OpenGL.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qtquick-visualcanvas-adaptations-software.html