Godot Jolt 项目技术文档
安装指南
1. 下载项目
你可以从以下两个途径下载 Godot Jolt 项目:
- GitHub 发布页面
- Godot 资产库
2. 解压文件
将下载的文件解压到你的 Godot 项目目录中。
3. 启动或重启 Godot
启动或重启 Godot 编辑器。
4. 打开项目设置
在 Godot 编辑器中打开你的项目设置。
5. 启用高级设置
确保“高级设置”已启用。
6. 更改物理引擎
- 进入“Physics”选项卡。
- 选择“3D”子选项卡。
- 将“Physics Engine”更改为“JoltPhysics3D”。
7. 重启 Godot
完成设置后,重启 Godot 编辑器。
项目的使用说明
1. 功能概述
Godot Jolt 是一个 Godot 游戏引擎的原生扩展,允许你使用 Jolt 物理引擎来驱动 Godot 的 3D 物理。它作为 Godot Physics 的直接替代品,实现了相同的节点,如 RigidBody3D
或 CharacterBody3D
。
2. 主要特性
- 更好的性能:相比 Godot Physics,Godot Jolt 提供了更好的性能和更稳定的模拟。
- 可选的替代节点:提供了所有关节的替代节点,这些节点与 Jolt 的接口更匹配,支持可破坏的关节、软限制以及每个关节的求解器迭代覆盖。
3. 不支持的功能
- 物理服务器目前不是线程安全的。
- 内存使用情况不会反映在 Godot 的性能监视器中。
SoftBody3D
不支持与Area3D
的任何交互。
4. 其他差异
- 比例实际上用于所有物体、形状和形状查询,除了
SoftBody3D
。 Area3D
检测静态物体是可选的,但可能会带来性能和内存成本。- 关节仅通过替代节点(如
JoltHingeJoint3D
)支持软限制。 - 弹簧和线性电机实际上在
Generic6DOFJoint3D
中实现。 - 单体关节将使
node_a
成为“世界节点”而不是node_b
。 - 使用
hit_back_faces
的射线投射将击中所有形状的背面/内部,而不仅仅是凹面形状。 - 射线投射返回
face_index
是可选的,可能会带来内存成本。 - 射线投射不受
ConcavePolygonShape3D
的backface_collision
属性的影响。 - 形状投射应更准确,但其成本也随投射距离而增加。
- 形状边距被使用,但被视为上限并与形状的范围成比例。
- 在物体进入场景树后操作其形状可能会很昂贵。
- 接触脉冲是估计值,当与多个物体碰撞时不会准确。
- 运动学物体的接触报告部分是可选的,可能会带来性能和内存成本。
项目API使用文档
1. 项目设置
有关 Godot Jolt 中可用的项目设置的详细信息,请参阅 docs/settings.md
。
2. 构建源码
有关如何从源码构建 Godot Jolt 的信息,请参阅 docs/building.md
。
项目安装方式
1. 支持的平台
- Windows (x86-64, x86)
- Linux (x86-64, x86)
- macOS (x86-64 + Apple Silicon)
- iOS
- Android (ARM64, ARM32, x86-64, x86)
注意:Linux 支持仅限于 glibc 2.31 或更新版本,这意味着 Ubuntu 20.04 (Focal Fossa) 或更新版本。
2. 支持的 Godot 版本
目前唯一支持的版本是 Godot 4.3(包括 4.3.x)。
3. 许可证
Godot Jolt 根据 MIT 许可证分发。有关详细信息,请参阅 LICENSE.txt
和 THIRDPARTY.txt
。