Доступна версия Qt 6.9 с улучшенной производительностью и рендерингом Emoji

Qt, кроссплатформенная среда разработки программного обеспечения, широко используемая для проектирования и развертывания графических пользовательских интерфейсов (и основа широко распространенной среды рабочего стола KDE), только что выпустила свою последнюю версию, 6.9.

Одной из наиболее заметных особенностей нового релиза является расширение возможностей 3D-графики с помощью Qt Graphs. В этом модуле реализована поддержка прозрачности в трехмерных поверхностных графиках, что упрощает создание плавных, многослойных визуальных образов, когда точки данных перекрываются.

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

Интересно, что теперь можно внедрить график в View3D из Qt Quick 3D, что позволяет сделать 3D-визуализацию данных более выразительной. В то же время 2D-графики получили замечательное улучшение в обработке ввода, а также настраиваемый plotArea в QGraphsView для управления точным позиционированием отображаемых графиков.

Кроме того, в Qt 6.9 была основательно обновлена поддержка emoji. Теперь Qt автоматически распознает последовательности эмодзи в тексте, выбирая цветные шрифты в соответствии с последними стандартами Unicode.

Примечательно, что поддержка распространяется на форматы шрифтов CBDT и COLRv1, гарантируя масштабируемое и качественное отображение на всех платформах. Для более детального контроля QFontDatabase предлагает новые API для выбора конкретного семейства шрифтов для эмодзи, что позволяет тщательно настроить пользовательский интерфейс.

Еще одно усовершенствование включает в себя флаг окна Qt.ExpandedClientAreaHint и новое прикрепленное свойство SafeArea в Qt Quick. Эти функции позволяют содержимому приложения расширяться от края до края дисплея, сохраняя при этом уважение к системным элементам пользовательского интерфейса.

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

Для тех, кто активно работает с SVG, в Qt 6.9 впервые реализована CSS-анимация для свойств цвета, заливки, обводки и трансформации. Это обновление применяется к модулю Qt SVG при растеризации SVG в несколько пиксмапов, а также к элементу VectorImage, появившемуся в Qt 6.8. Благодаря этой функции разработчики могут напрямую интегрировать анимированные SVG в граф сцены Qt Quick, упрощая рабочие процессы для динамических интерфейсов.

Qt 6.9 также содержит ряд улучшений производительности, чтобы приложения оставались плавными и отзывчивыми:

  • CPU Core Preferences: QThread теперь может указывать соотношение производительности и эффективности использования ядра на современных архитектурах CPU, оптимизируя скорость работы приложения или энергопотребление по мере необходимости.
  • QQuickPaintedItem Acceleration: На платформах OpenGL вернулся режим рендеринга FramebufferObject, обеспечивающий аппаратное ускорение императивного рисования.
  • Обновления OpenGL ES и Direct 3D: Бэкэнд OpenGL ES RHI поддерживает мультисэмплированный рендеринг для более четкого изображения, а бэкэнд Direct 3D RHI использует выделенный поток vblank watcher для снижения задержек в Windows.
  • Variable Rate Shading: На бэкендах RHI, не относящихся к OpenGL, Qt может использовать затенение с переменной скоростью, что полезно для XR-приложений, особенно с Qt Quick 3D XR на visionOS.
  • Эффективность теней: Новый элемент RectangularShadow в Qt Quick и улучшенный контроль над картами теней в Qt Quick 3D помогают оптимизировать рендеринг графики, предотвращая дорогостоящие вычисления.
  • Тюнинг просмотра элементов: Приложения, основанные на виджетах, получают прирост производительности за счет лучшей обработки больших изменений данных в моделях элементов, а использование памяти QHeaderView значительно снижается при условии, что изменение размера и упорядочивание секций остаются отключенными.

Наконец, Qt Quick 3D теперь поддерживает прозрачность, независимую от порядка (OIT). Эта функция позволяет устранить давние визуальные ошибки, вызванные ручной сортировкой перекрывающихся прозрачных объектов. Вместо того чтобы разработчики кропотливо сортировали геометрию по глубине, OIT использует технику взвешенного смешивания для баланса между требованиями к производительности и точностью рендеринга.

Более подробную информацию можно найти в анонсе. Следующий минорный выпуск Qt, 6.10, ожидается в сентябре этого года.

Зарубин Иван Эксперт по Linux и Windows

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

Похожие статьи

Комментарии (0)