出品 | OSC开源社区(ID: oschina2013)
Qt 6.4 发布了 。此版本包含 Qt HTTP Server 和 Qt Quick 3D Physics 等多个新功能,下面稍作介绍:
WebAssembly
在 Qt 6.4 中,对 WebAssembly 的支持已不再局限于此前的 “技术预览” 阶段,现在支持使用 Qt for WebAssembly 来构建针对 Web 平台的应用程序。
新的模块
Qt Quick (TP) 的 iOS 样式
使用 Qt Quick Controls 开发的用户界面,自动使用 Windows 和 macOS 的原生样式支持 ,以及使用 Material 样式的 Android。
而 Qt 6.4 为在 iOS 上运行的 Qt Quick 应用程序 添加了原生样式 。iOS 风格支持 iOS 平台上的深色和浅色模式,也可以在 macOS 上使用。
Qt HTTP 服务器 (TP)
新模块可以轻松地将 HTTP 服务器添加到任何 Qt 应用程序。服务器实现了对 HTTP 1.1 的部分支持,并通过传输层安全协议支持安全性。
文档中提及,它更多是面向嵌入式应用的本地 / 基于 LAN 的 Web 服务,不具备面向 Internet 的 Web 服务器的稳健性和安全性。(只能在受信任的网络中运行)
Qt Quick 3D 物理 (TP)
新的 Qt Quick 3D Physics 模块提供了一个高级物理模拟 API,它支持模拟交互式刚体,以及用于检测重叠的静态网格和非碰撞体。每个模拟物体都可以有自己的物理属性,如质量、密度和摩擦力。
将物理模拟集成到 Qt Quick 3D 中,轻松构建自然移动和交互的 3D 场景。之前需要手工制作这样的场景和动画,可能非常费力,但是使用 Qt Quick API 可以很容易地将物理内容添加到任何 3D 场景中。
该模块基于成熟、经过充分测试和高性能的 PhysX 引擎。
Qt TextToSpeech
Qt 应用程序默认支持辅助技术,例如屏幕阅读器,多应用程序可以使用额外的文本参与到语音合成。
新功能
Qt Quick 3D
使用预生成的光照贴图支持全局照明,允许使用不同的光源创建更逼真的 3D 场景,同时将运行时的性能成本保持在最低水平。此功能处于早期技术预览阶段。
此外,还为工具箱添加了线条粒子、对镜面光泽材质的支持、反射探针、天空盒、自定义材质和纹理的更多配置选项。
Qt 快速项目视图
为 Qt Quick 的 TableView 和 TreeView 类型添加了更多功能:
用户现在可以使用键盘导航,并选择行和列。
应用程序开发人员可以更好地控制单元格定位、动画以及展开和折叠树节点。
Qt Quick 中的动画更流畅
添加了一个新的 FrameAnimation 动画类型,它允许代码与动画帧同步运行。
完全支持 RHI 的 QQuickWidget
使用 QQuickWidget 可以构建 Qt Quick 和 Qt Widget 元素共存的应用程序用户界面。但到目前为止,它需要使用 OpenGL。
Qt 6.4 版本从头开始重新设计了该类,现在 QQuickWidget 可与所有受支持的图形 API 一起使用:Metal、Vulkan、Direct3D 11 以及 OpenGL。
Qt 多媒体
添加了一个 基于 FFMPEG 的多媒体后端 ,它在所有平台上提供一致的音频和视频功能。对于视频播放,改进了色彩空间处理和 HDR 支持,应用程序可以将字幕注入 QVideoFrames。
技术预览下的一项新功能是支持空间音频,可以创建 3D 声音场景,其中 Qt 根据房间的大小、墙壁和地板的材料以及听者的位置模拟具有声音特征的虚拟房间,此功能处于技术预览阶段。
Qt Widgets 中有用的新特性
Qt 6.4 添加了 API 来控制 表单布局中行的可见性 ,以及 跳转到向导中的任何页面 。
QKeySequenceEdit 中新增了一个可选的清除按钮,对具有键盘快捷键的复杂应用程序的构建很有帮助。
QML
对值类型的更好支持,将结构化数据从 C++ 公开到 QML 变得更容易。值类型和值类型列表可用于属性,而无需 QObject 包装器的开销。
在工具方面, QML 语言服务器在支持 QML 的 IDE 中提供实时反馈。
QML linter 现在可以识别 Qt Quick 和 Qt Quick Controls 的低效或不当使用,并在构建时生成警告。
默认启用 QML 类型编译器,可以将更多 QML 编译成 C++。
下一个版本 Qt 6.5 将为商业用户提供长期支持,此外,正在将 Qt Location 移植到 Qt 6、改进对 Windows 11 和 Linux 桌面的主题支持,并且通过编译器工具和更好的值类型支持来提高 QML 性能。有关 Qt 6.5 的更多详细信息,请查看 “Qt 未来路线图” 研讨会(阅读原文查看)。
可以在 发行说明 找到 Qt 源代码的所有贡献者的完整列表:https://code.qt.io/cgit/qt/qtreleasenotes.git/about/qt/6.4.0/release-note.md
相关链接:https://www.qt.io/blog/qt-6.4-released
热门跟贴