为游戏添加智能行为:怪物与玩家的AI实现
在游戏开发中,为怪物赋予一定的自主性可以极大提升游戏的趣味性和挑战性。我们可以通过结合代理(Agents)、目标(Goals)和行为(Behaviors)来实现这一目标。
1. 创建组件系统
首先,我们要创建一个组件系统来管理代理。在 GameScene.swift 文件中,在 graphs 属性下方添加以下代码:
let agentComponentSystem = GKComponentSystem(componentClass: GKAgent2D.self)
这段代码创建了一个新的 agentComponentSystem 属性,用于管理 GKAgent2D 组件。
接着,要确保这个系统参与更新循环。在 GameScene 类的 update(_:) 方法中,在更新实体的 for-in 循环下方添加以下代码:
// Update the component systems
agentComponentSystem.update(deltaTime: dt)
2. 委托代理的职责
代理有两个主要职责:一是更新代理的位置以匹配所连接节点的位置;二是更新节点的位置以匹配代理的
超级会员免费看
订阅专栏 解锁全文
40

被折叠的 条评论
为什么被折叠?



