2024-09-10
预发布
距离 4.3 版本发布还不到一个月,但我们在 PR 积压中有很多好东西排队,以至于对于贡献者和测试人员来说,这是一个提前的圣诞节(或其他礼物繁多的节日季)
我们合并了 200 多个 PR 来制作第一个开发快照,仅仅两周后,我们又推出了另一批 350+ 改进,供你测试和提供反馈!
此版本中的许多更改都是错误修复,这些错误修复将向后移植到 Godot 4.3 并在 4.3.1 中发布!所以拜托了,请仔细测试此版本,以便我们对这些更改充满信心,并尽快发布包含这些更改的 4.3.1 版本
请记住,虽然我们试图确保每个开发快照都足够稳定以进行一般测试,但这是预发布软件。请务必频繁进行备份,或使用版本控制系统,例如 Git,用于在损坏或数据丢失的情况下保留你的项目
跳转到 下载 部分,立即试一试,或继续阅读以了解有关此版本中改进的更多信息。你还可以尝试此版本的 Web 编辑器或 Android 编辑器。如果你对后者感兴趣,请加入我们的测试组以访问预发布版本
封面插图来自 Megaloot,这是一款令人上瘾的库存管理 roguelike,由 axilirate 在 Godot 4.3 中开发并由 Ravenage Games 发行。它最近在 Steam 上发布并取得了巨大成功。你可以在 Twitter 上关注进展
亮点
如果你错过了它,请查看 4.4 dev 1 发行说明,了解该快照中已有的一些关键功能的概述,因此仍可在 dev 2 中进行测试
这个新的快照增加了更多功能,这些功能在 Godot 4.3 的稳定阶段已经排队,因此在 4.4 开发周期的早期就准备好合并了
正在推出…
键入词典!
Godot 4.0 引入了对类型化数组的支持,但缺乏对类型化字典的支持。这迅速成为最需要添加到引擎中的功能之一,多亏了 Thaddeus Crews,它现在已经在 Godot 4.4 中实现!当与 Godot 的 Dictionary 类型交互时,此功能会影响核心引擎 GDScript 和所有其他脚本语言。你现在可以从脚本中导出键入的词典,并从大大改进的 Inspector UX 中受益,以分配正确的键和值
1 |
作为一项相关的改进,Rune (GH-70096) 还优化了对 StringName 字典键的支持
无差错的首次项目导入
对于使用版本控制系统的 Godot 用户来说,从他们的存储库中排除该文件夹是很常见的,因为它包含的文件可以在你第一次编辑项目时由 Godot 重新创建 .godot
该系统的一个缺点是,第一次启动没有文件夹的编辑器通常非常嘈杂,有数百个关于缺少资源的信息,并且由于未知、插件尚未注册或未知 GDExtension 类,各种脚本无法编译 .godotclass_name
Hilderin 英勇地克服了这个充满依赖关系和多线程陷阱的迷宫,并为我们带来了期待已久的圣杯:无错误地首次导入项目,无需重新启动编辑器即可工作!使用 GH-92303(用于 GDScript,包含在 4.3 中)和现在的 GH-93972(用于 GDExtensions)和 GH-92667(用于插件)需要付出很多努力 class_name
此外,凭借这些新发现的深度知识,Hilderin 还进一步改进了第一个项目导入体验,使 FileSystem 停靠在扫描资源时响应速度更快 (GH-93064)EditorFileSystem
编辑器窗口状态现在是持久的
Samuele Panzeri 在 GH-76085 中实施了另一项期待已久的生活质量改进,增加了对跟踪编辑器窗口状态(全屏/窗口模式、屏幕、大小、位置)的支持,以便在会话中恢复它。对于使用大显示器或多显示器设置的用户来说,如果用户希望在第一个屏幕上使用与全屏不同的默认行为,那么这应该特别受欢迎
视觉着色器的改进
Yuri Rubinsky 为视觉着色器编辑器实现了一些流行的生活质量改进:
新的材质预览侧边固定装置 (GH-94215):
拖放网格以在视觉着色器中创建MeshEmitter(GH-93017):
XR 设备的初始 Android 编辑器支持
由于 Godot 的独特功能,即使用引擎本身制作编辑器,我们能够将 Godot 编辑器带到非常规的地方,例如 Web 和 Android 设备。在后者的基础上,Fredia Huya-Kouadio 完成了 Bastiaan Olij 多年前开始的概念验证,以添加对使用 OpenXR 在 XR 上下文中使用 Android 编辑器的支持 (GH-96624)!你可以通过旁加载 APK 来测试当前版本,目前在 Meta Quest 3 或 Quest Pro 上受支持
还有更多!
有太多令人兴奋的变化,无法在这里一一列举,但这里有一个精选的选择:
2D:在每个 TileSet 遮挡层中实现多个遮挡多边形 (GH-93029)
2D:启用此选项可在首次加载 Sprite 表时“猜测”Sprite 表的行数和列数 (GH-95475) SpriteFramesEditor
3D:添加选项以从动画骨架姿势烘焙网格 (GH-85018)
3D:添加 3D 导航控件的完全自定义 (GH-85331)
3D:修复调试碰撞形状在编辑器中可见的问题 (GH-86699) CSGShape3D
3D:添加了隐藏编辑器变换 Gizmo 的功能 (GH-87793)
动画:当关键帧属性发生变化时,实时更新 AnimationPlayer (GH-91599)
动画:优化 AnimationMixer 混合过程 (GH-92838)
动画:选择多个节点时允许设置关键帧属性 (GH-92842)
动画:允许在动画播放器中跳转到上一个/下一个关键帧 (GH-96013)
动画:在动画贝塞尔曲线编辑器中使用抗锯齿线条绘制 (GH-96559)
音频:ResourceImporterWAV:默认启用 QOA 压缩 (GH-95815)
音频:修复使用音频样本而不是流时的泄漏 (GH-96572)
Buildsystem:添加了对使用 VS clang-cl 工具集进行编译的支持 (GH-92316)
核心:能够将本机引擎类型转换为 JSON 并返回 (GH-92656)
核心:和 (GH-94169) 的批量修复 WorkerThreadPoolResourceLoader
核心:WorkerThreadPool:修复可能导致死锁的 end of-yield 逻辑 (GH-96225)
核心:ResourceLoader:添加线程感知资源更改机制 (GH-96593)
编辑器:重新启动时记住编辑器窗口模式、屏幕、大小和位置 (GH-76085)
编辑器:修复使用外部编辑器覆盖脚本的问题 (GH-96007)
编辑器:在脱机模式下禁用导出模板下载 (GH-96331)
编辑器:FileSystem:添加选项以在 Dock 中显示一些不受支持的文件 (GH-96603)
导出:允许使用脚本/GDExtension 添加自定义导出平台 (GH-90782)
导出:Android 编辑器:添加了对导出平台二进制文件的支持 (GH-93526)
导出:macOS:使用每个架构的最低操作系统版本进行导出 (GH-95885)
导出:从 Windows 导出.app重新启用 macOS,添加有关 Unix 权限的警告 (GH-96669)
GDExtension:允许 ClassDB 创建对象,而无需为 GDExtension 进行后初始化 (GH-91018)
GDExtension:实施概念 (GH-91166) GDExtensionLoader
GDExtension:修复了添加 GDExtensions 后编辑器需要重启的问题 (GH-93972)
GDScript:StringName 字典键 (GH-70096)
GDScript:实现类型化词典 (GH-78656)
GDScript:自动完成:改进索引的自动完成 (GH-79378)
GDScript:允许实时重新加载内置脚本 (GH-94012)
GDScript:自动完成:在分配时重新引入枚举选项 (GH-96326)
GUI:在 TextEdit 中实现适合内容宽度 (GH-83070)
GUI:改进 SpinBox 交互、拆分箭头、添加主题属性 (GH-89265)
GUI:TextServer:通过删除冗余查找(GH-92575、GH-92581),性能提高了 2 倍
GUI:CodeEdit:将渲染时间缩短了 2 倍 (GH-92865)
GUI:提高性能 (GH-94748) Tree
GUI:独立修复矩形倾斜 (GH-96285) StyleBoxFlat
导入:将 GLTF extras 导入和导出 (GH-86183) node->meta
导入:修复了加载大型项目时 FileSystem 停靠不显示任何文件夹的问题 (GH-93064)
导入:修复了窗口未聚焦时导入缓慢的问题 (GH-93953)
导入:将 3D 骨架预览添加到高级导入器 (GH-96094)
导入:添加“使用节点类型后缀”3D 场景导入选项 (GH-96745)
导航:通过使用堆存储可遍历多边形来提高寻路性能 (GH-85965)
导航:提高启用跳转时的性能 (GH-93319) AStarGrid2D
网络:mbedTLS:修复不正确的证书固定 (GH-96172) client_unsafe
网络:修复了网络分析器中除以零的问题 (GH-96464)
粒子:为粒子发射环形状添加锥体角度控制 (GH-91973)
插件:修复插件需要重新启动编辑器才能正常运行 (GH-92667)
移植:Windows:遵循 Windows 设置中的集成 GPU 首选项 (GH-93985)
插件:在编辑器右键单击上下文菜单中添加了对自定义项的支持 (GH-94582)
移植:Windows:始终使用绝对 UNC 路径和长路径感知 API,将“长路径感知”标志添加到应用程序清单 (GH-91902)
移植:向 (GH-94434) 添加了对非阻塞 IO 模式的支持 OS.execute_with_pipe
移植:Android 编辑器:添加了对以 PiP 模式启动“播放”窗口的支持 (GH-95700)
移植:Android:修复以使其实际工作 (GH-96182) JavaClassWrapper
渲染:调整 TAA 去遮挡比例,以避免在运动过程中拒绝所有样本 (GH-86809)
渲染:透射率效果的各种修复 (GH-93448)
渲染:避免在场景剔除阶段为没有基的实例编制索引 (GH-95503)
渲染:光照贴图 GI:为定向光照贴图打包 L1 SH 系数 (GH-96114)
渲染:金属:在兼容模式下为 betsy 和光照贴图模块启用 (GH-96351)
渲染:修复了使用 OpenGL+Angle 的旧版 AMD GPU 无法渲染 GPU 文章的问题 (GH-96413)
渲染:兼容性:为所有非 Web 平台启用 MSAA 支持 (GH-96455)
着色器:允许拖放网格在视觉着色器中创建MeshEmitter(GH-93017)
着色器:添加了对在着色器语言中评估运算符值的基本支持 (GH-93822)
着色器:向视觉着色器编辑器添加材质预览 (GH-94215)。
着色器:为着色器编辑器文件列表添加上下文菜单 (GH-95738)
第三方:mbedTLS:更新到 3.6.1,修复回归 (GH-96385)
第三方:thorvg:更新到 0.14.9,修复了回归问题 (GH-96658)
XR:Android 编辑器:改进了对 XR 项目的支持 (GH-96624)
更改日志
139 位贡献者为此新快照提交了 376 项改进。请参阅我们的交互式更改日志,了解自上一个 4.4-dev1 快照以来的完整更改列表
此版本基于提交 97ef3c837
构建
下载
下载 Godot 4.4 dev2
平台 | 标准 | .NET |
---|---|---|
Linux | 标准 | .NET |
macOS | 标准 | .NET |
Windows | 标准 | .NET |
标准版本包括对 GDScript 和 GDExtension 的支持
.NET 版本(标记为)包括对 C# 以及 GDScript 和 GDExtension 的支持 mono
- 另请参阅 C# 平台支持
虽然引擎维护人员会尽最大努力确保每个预览快照和候选版本都是稳定的,但根据定义,这只是一个预发布软件。请务必经常进行备份,或使用 Git 等版本控制系统,以在损坏或数据丢失的情况下保留你的项目
已知问题
类型化词典:使用运算符时,错误地允许使用不同类型的键/值 (GH-96772)。下一个开发快照的修复程序已经在管道中 []
Windows:由于 Windows 上最近的 FileAccess 更改暴露了工具链错误,因此在此快照中无法检测新添加的资源 (GH-96828)、导出变量 (GH-96810) 和项目的上次修改日期 (GH-96812)。GH-74830 已修复此问题
我们接受每个版本都会有各种问题,这些问题已经报告但尚未修复。有关已知错误的完整列表,请参阅 GitHub issue
原文: Dev snapshot: Godot 4.4 dev 2 - Godot Engine
由机器翻译并人工校对