Wander
- 原理: 使智能体能有随机的操控力,使它能在场景中国随机移动。
- 方案一:简单实现方案
- 方案二: 圆上随机
基于Seek行为,每隔一段时间以后,随机改变它的Target智能体不到达目标点。
![](https://img.haomeiwen.com/i3600976/a092285fbfa9aee8.png)
-
存在的问题:
- 有时候将target放置在角色的后面时,角色需要立刻转向,如果连续多次如此,便显得十分不协调
-
解决方案:
- 圆上随机。
Reynolds
- 在角色的前端凸出一个圆圈,目标被限制在该圆圈上,然后智能体移动目标。
- 每帧给目标添加一个随机的位移,沿着圆周移来移去,创建出一个没有抖动的往复运动。
![](https://img.haomeiwen.com/i3600976/f73ea23211c6a24d.png)
- 代码实现
![](https://img.haomeiwen.com/i3600976/0fa71efb74f9ac27.png)
- 接着需要在Start中初始化wanderTarget
![](https://img.haomeiwen.com/i3600976/6c4a5a005604c502.png)
- wander核心部分
![](https://img.haomeiwen.com/i3600976/1165f810bd6f0061.png)
- 一如既往的Seek行为
![](https://img.haomeiwen.com/i3600976/037fd0144922bd35.png)
- 添加wander
![](https://img.haomeiwen.com/i3600976/f0660bf9adac9afb.png)
- 实现效果:
![](https://img.haomeiwen.com/i3600976/073aa0b36e5031b1.png)
网友评论