Godot引擎4.3到4.4版本升级指南

Godot引擎4.3到4.4版本升级指南

godot-docs Godot Engine official documentation godot-docs 项目地址: https://gitcode.com/gh_mirrors/go/godot-docs

作为一款持续迭代的开源游戏引擎,Godot 4.4版本带来了诸多改进和新特性。本文将全面解析从4.3升级到4.4版本时需要注意的关键变更点,帮助开发者顺利完成项目迁移。

版本升级概述

Godot 4.4作为4.x系列的一个增量更新版本,保持了良好的向后兼容性。大多数4.3版本的项目可以安全地升级到4.4,但仍有一些破坏性变更需要开发者特别关注。

核心系统变更

文件访问(FileAccess)改进

文件存储相关方法现在都增加了返回值,用于指示操作是否成功。这包括:

  • store_8/store_16/store_32/store_64
  • store_buffer
  • store_csv_line
  • store_double/store_float/store_half
  • store_line
  • store_pascal_string
  • store_real
  • store_string
  • store_var

这些方法原本返回void,现在改为返回bool类型。对于C#项目,这属于二进制不兼容变更,需要重新编译。

操作系统相关变更

read_string_from_stdin方法新增了buffer_size参数,默认值为1024。这个变更在GDScript中是不兼容的,需要开发者手动调整调用方式。

正则表达式增强

compilecreate_from_string方法新增了show_error可选参数,用于控制是否显示错误信息。

GUI节点变更

RichTextLabel改进

push_meta方法新增了tooltip可选参数,可以为元数据添加工具提示。set_table_column_expand方法新增了shrink参数,控制列是否可收缩。

GraphEdit调整

connect_node方法新增keep_alive可选参数,frame_rect_changed信号的参数类型从Vector2改为Rect2,这属于不兼容变更。

物理系统变更

SoftBody3D增强

set_point_pinned方法新增了insert_at可选参数,可以指定插入点的位置。

渲染系统重大更新

粒子系统改进

所有粒子类(CPUParticles2DCPUParticles3DGPUParticles2DGPUParticles3D)的restart方法都新增了keep_seed可选参数,控制是否保留随机种子。

着色器系统变更

Shader类的get_default_texture_parameterset_default_texture_parameter方法的纹理类型从Texture2D扩展为更通用的Texture类型。类似地,VisualShaderNodeCubemapVisualShaderNodeTexture2DArray的相关属性类型也进行了扩展。

RenderingDevice调整

draw_list_begin方法进行了重构,移除了多个参数并新增了breadcrumb可选参数。缓冲创建方法新增了enable_device_address参数。

导航系统增强

NavigationServer2DNavigationServer3Dquery_path方法新增了callback可选参数,支持异步路径查询。

编辑器插件变更

EditorInterface改进

open_scene_from_path新增set_inherited参数,popup_node_selectorpopup_property_selector新增了current_value参数。

废弃方法移除

EditorSceneFormatImporter_get_import_flags方法被完全移除,因为这个方法从未被引擎实际使用。

重要行为变更

曲线资源(Curve)范围强制

Curve资源现在会强制实施其值范围。如果有点落在默认的[0,1]范围之外,需要调整min_valuemax_value

着色器节点类型变更

VisualShaderNodeVec4Constant节点的输入类型改为Vector4,需要开发者重新创建常量值。

CSG系统重构

CSG系统现在使用Manifold库,不再支持非流形(non-manifold)网格。对于需要渲染非流形几何体(如四边形或平面)的情况,建议改用MeshInstance3D

Android传感器变更

Android传感器事件现在默认禁用,需要在项目设置的Input Devices > Sensors中手动启用。

升级建议

  1. 全面测试:虽然大多数变更都是兼容的,但仍建议进行全面测试
  2. 关注返回值:特别是文件操作相关方法现在都有返回值
  3. 检查类型变更:注意纹理类型和参数类型的扩展
  4. 处理不兼容变更:如GraphEdit的信号参数类型变更
  5. 调整CSG使用:如有非流形几何体需求,改用MeshInstance3D

通过关注这些关键变更点,开发者可以顺利将项目从Godot 4.3升级到4.4版本,享受新版本带来的性能改进和新特性。

godot-docs Godot Engine official documentation godot-docs 项目地址: https://gitcode.com/gh_mirrors/go/godot-docs

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

岑姣盼Estra

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值