Команда Компанія Qt оголосила про випуск пробної версії Qt 6 "Альфа" і в ньому висвітлено різні зміни та функції, пов’язані з 3D API, а також вдосконалення коду.
Крім того ще підкреслюється, що Qt 6 включає значні архітектурні зміни а для збірок потрібен компілятор, що підтримує стандарт C ++ 17.
QT 6 Alpha Особливості
У цій тестовій версії такПідкреслюється, що новий абстрагований графічний API це не залежить від 3D API операційної системи. Ключовим компонентом нового стеку діаграм Qt є механізм візуалізації сцени, який використовує рівень RHI (Візуалізація апаратного інтерфейсу) для забезпечення програм Qt Quick не тільки з OpenGL, але також на API Vulkan, Metal та Direct 3D.
Окрім Проживання в модулі Qt Quick 3D з API для створення користувальницьких інтерфейсів на основі Qt Quick, що поєднують 2D та 3D графіку. Qt Quick 3D дозволяє використовувати QML для визначення елементів інтерфейсу 3D без використання формату UIP.
У Qt Quick 3D для 2D та 3D ви можете використовувати час виконання (Qt Quick), макет сцени та анімаційний кадр, а також використовувати Qt Design Studio для розробки візуального інтерфейсу.
Модуль вирішує такі проблеми, як великі накладні витрати при інтеграції QML із вмістом з Qt 3D або 3D Studio, а також забезпечує можливість синхронізації анімації та перетворень на рівні окремого кадру між 2D та 3D.
також базовий код реструктурований розділивши його на менші частини і зменшивши розмір базового виробу. Інструменти розробника та користувацькі компоненти будуть поставлятися як плагіни, що розповсюджуються через Qt Marketplace.
З іншого боку, також Згадується суттєвий редизайн QML:
- Сильна підтримка друку.
- Можливість компіляції подання QML в C ++ та машинний код.
- Увімкніть повну підтримку JavaScript (використання повнофункціонального механізму JavaScript вимагає великих ресурсів, що ускладнює використання QML на такому обладнанні, як мікроконтролери).
- Відмова від версії в QML.
- Уніфікація структур даних, що дублюються в QObject та QML (зменшить споживання пам'яті та пришвидшить запуск).
- Уникайте генерації структур даних під час виконання на користь генерації під час компіляції.
- Приховуйте внутрішні компоненти, використовуючи приватні властивості та методи.
- Покращена інтеграція із засобами розробки для рефакторингу та діагностики помилок під час компіляції.
Також ста додані інструменти для управління графічними ресурсами під час компіляції, наприклад, перетворення зображень PNG у стиснуті текстури або перетворення шейдерів та сіток у двійкові формати, оптимізовані для конкретного обладнання.
The включення єдиного механізму теми та стилю для досягнення появи віджетів Qt та власних програм Qt Quick на різних мобільних та настільних платформах.
Було вирішено використовувати CMake замість QMake як система побудови. Підтримка побудови програм за допомогою QMake залишиться, але Qt буде побудована за допомогою CMake.
CMake був обраний, оскільки цей набір інструментів широко використовується в середовищі розробки проектів C ++ і сумісний з багатьма середовищами розробки. Спільнота продовжила розробку системи збірки Qb, яка має замінити QMake.
La перехід під час розробки до стандарту C ++ 17 (раніше використовувався C ++ 98, а з Qt 5.7 - C ++ 11). Qt 6 планує підтримувати багато сучасних функцій C ++, але без втрати сумісності з кодом на основі попередніх стандартів.
Так само, як можливість використовувати деякі функції, пропоновані для QML та Qt Quick в коді С ++. Це включає нову систему властивостей для QObject та подібних класів. У ядро Qt буде інтегрований движок для роботи з посиланнями з QML, що зменшить навантаження та споживання пам'яті для посилань і зробить їх доступними для всіх частин Qt, а не лише для Qt Quick.
Нарешті згадується, що датою випуску стабільної версії буде 1 грудня поточного року.