NavigationRegion3D
导航网络
需要作为地形的父节点
需要点击工具栏 -> 烘焙导航网络
参数Geometry/Parsed Geometry Type:使用哪个几何体来计算导航
| 选项 | 描述 |
|---|---|
| Mesh Instances | 使用静态模型,即MeshInstance3D节点 |
| Static Colliders | 使用静态碰撞,即StaticBody3D节点 |
| Both | 两者 |
NavigationAgent3D
导航器
需要作为需要导航的物体的子节点
设置目标
public override void _Ready() {
// 获取实例
NavigationAgent3D agent = GetNode<NavigationAgent3D>("NavigationAgent3D");
// 设置目标位置
agent.TargetPosition = @Node.GlobalPosition;
}开始导航
public override void _PhysicsProcess(double delta) {
// 判断是否导航结束
if (!agent.IsNavigationFinished()) {
// 获取导航要去的位置
Vector3 next = agent.GetNextPathPosition();
// 处理
// ...
}
}NavigationObstacle3D
路障
NavigationLink3D
连接两个位于
NavigationRegion3D上的位置的链接,导航时能够让代理走这个链接。