建立海盗的天堂:盗贼之海的AI设定:骷髅和鲨鱼AI的秘密

2019-10-10 10:02  GameRes游资网

建立海盗的天堂:盗贼之海的AI设定:骷髅和鲨鱼AI的秘密

2.动物行为

尽管游戏需要在指定岛屿上制造威胁,但这些地方除了敌人还有各种野生动物:猪、鸡和蛇。它们可以是你在躲避骷髅军团追杀时遇到的又一个大麻烦,它们可以是商人联盟的悬赏物,也可以只是为环境加一点生气。

这些角色也使用行为树,尽管它们的架构与骷髅非常相似,但它们好对付得多:玩家只有在靠近蛇时它才会主动攻击,而猪和鸡则会马上逃离。就跟骷髅一样,数据库的使用能够帮助开发者指定特定动物的行为表现。

在第一篇中我就说过,考虑到负载管理,动物的处理方式与骷髅基本一致,如果它们正在消耗的这些服务器资源用在别的地方更值得,系统可以在必要时让它们进入休眠或者消失。

鲨鱼&导航系统

我们分析了所有陆地上的AI角色,那么海里的呢?让我们来看看玩家的第一个真正威胁——埋伏在海洋深处的鲨鱼,很多很多鲨鱼。

从设计的角度来看,鲨鱼是为了给玩家增加一个新的挑战,确保你不会在水中无所事事,时刻警惕着危险。它们只在小范围、必要时生成。也就是说,你不会在开放世界里偶然遇到一只在海里游泳的鲨鱼,相反,一条鲨鱼会被传送到你附近。如果游戏你觉得你在水里闲得太久了,鲨鱼就会尾随你。

建立海盗的天堂:盗贼之海的AI设定:骷髅和鲨鱼AI的秘密

因此,尽管鲨鱼的行为树结构相对简单——它们只会对猎物进行围捕或攻击——但有两个明显的问题需要解决。第一是导航:你要怎么确保AI鲨鱼知道如何在水中移动。通常来说,我们会使用导航网格工具来实现在静态表面物体的移动。这对陆地角色来说是行得通的,因为导航网格是一个二维的平面,模拟物体在三维空间的移动。然而,这并不适用于形状不断变化的表面或体积不断变化的空间,例如水和空气——这意味着你需要定制的一个特别的解决方案。这并不是只有《盗贼之海》遇到的问题,我最近研究的《地平线:零之曙光》也有类似的麻烦——Guerilla Games不得不为空中的敌人单独做一个导航系统。

Rare公司正面攻克问题的方法是构建另一个导航系统,集成到虚幻引擎中现有的导航框架中,但专门针对水下运动。然而在这之前,还有一个设计问题需要解决:鲨鱼不能停下来。虽然不同种类的鲨鱼之间有所差异,但大多数现实中的鲨鱼需要保持运动才能呼吸。所以AI角色也需要复制这种行为:以不同的速度在预定轨迹上游动,期间还要不断微调鲨鱼的运动方向。所以运动系统不仅要确保AI角色能像鲨鱼一样在水中穿梭,它还必须还原鲨鱼的动态细节。

建立海盗的天堂:盗贼之海的AI设定:骷髅和鲨鱼AI的秘密

除非鲨鱼被指示去攻击玩家,否则它们一般都是在按弧形轨迹游泳。这是通过计算既定直径的圆弧来实现的,它会影响鲨鱼在运动时的转弯速度,设计师可以调整鲨鱼沿着圆弧运动的速度。同时,速度值被发送到运动组件,这样玩家就能从动画中感觉到鲨鱼运动速度的变化。导航系统指定一个二维或三维空间的地点,然后创建一个适合该位置的自然弧线,让鲨鱼游过去。

分享到微信朋友圈 ×
打开微信,点击底部的“发现”,
使用“扫一扫”即可将网页分享至朋友圈。
×

本网页已闲置过久,点击关闭或空白处,即可回到网页