Qt 6.4 正式发布,添加 http 服务器、物理、光线等大量新模块

来源: OSCHINA
编辑: 罗奇奇
2022-09-30 08:07:00

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 源代码的所有贡献者的完整列表

展开阅读全文
精彩评论
离线安装包只有商业用户好像才有,免费版的只能在线安装,很是无语,社区版不提供安装包是QT最错误的决定
2022-09-30 09:00
2
举报
最好的GUI框架,期待国产GUI框架出来..
2022-09-30 08:58
2
举报
我还在5.14版。一个原因是高版本qt不支持低版本gcc了好像,另一个原因是没有离线安装包
2022-09-30 08:23
2
举报
Qt Quick Controls一出,wxWidgets就压力山大了。原生控件原本是wxWdigets的亮点,这下好了,Qt也一并支持
2022-09-30 15:24
1
举报
8 收藏
分享
8 评论
8 收藏
分享
返回顶部
顶部