上QQ阅读APP看书,第一时间看更新
1.7 徘徊
徘徊算法对于随机的群体仿真、动物,以及几乎任意类型的需要在空闲时随机移动的NPC都表现得非常优秀。
准备工作
向AgentBehaviour类中添加OriToVec函数,用于把方向值转换成向量值。
操作步骤
所有步骤可以看成是一个三大步流程,在这个流程中,首先用一种参数化的随机方式操作内部目标的位置,朝向那个位置点,再做相应的移动:
1. 创建派生自Face的Wander类:
2. 定义Awake函数,以便初始化内部目标对象:
3. 定义GetSteering函数:
运行原理
此行为用两个半径值计算接下来的随机位置点、朝向那个随机点,然后把计算出的方向值转换成方向向量,如图1-2所示。