【游戏 AI】9 - 运动学移动算法

本文介绍了游戏AI中的运动学移动算法,包括追逐和漫步两种典型算法。运动学移动算法基于静态数据,计算角色朝目标方向的速度。追逐算法确保角色朝目标移动,而漫步算法则让角色在保持前进的同时能自由转向。文章详细讨论了这两种算法的数据结构、性能以及如何处理到达目标的行为。
摘要由CSDN通过智能技术生成

如上一篇文章所说的,移动算法通常分为两大类:运动学移动算法 和 动态移动算法。这篇文章主要介绍运动学移动算法,相比较而言,运动学移动算法虽然更简单,但却十分实用

运动学移动算法输入是静态数据(位置和方向,没有速度),输出是所需的速度。输出通常只是一个开或关、或者是目标方向、以全速移动、静止。运动学算法不使用加速度,尽管速度的突然变化可能被平滑在几个帧

许多游戏甚至将事情简化得更简单:它强迫角色的方向与它所行进的方向一致;如果角色是静止的,它要么面对一个预先设定的方向,要么面对它移动的最后一个方向。

如果它的运动算法返回一个目标速度,那么这个速度将用于设置它的方向,这可以用下面的函数简单地完成

我们将看两种运动学移动算法:追逐和漫步。建立运动学移动算法是极其简单的,所以我们将只看这两个代表性的样例。而与之对应的动态移动算法会在后续的文章中更多地介绍

然而,我必须强调,这种简洁并不是因为它们不常见或不重要,在许多游戏中,运动学移动算法仍然是移动系统的主要组成部分。后续文章中角色移动由物理引擎控制的动态算法确实很常见,但并不是全都是这样实现的。

一、追逐

运动学追逐行为以角色的静态数据和目标的静态数据作为输入,它计算从角色到目标的方向,并请求沿着这个方向的速度。该算法可以用几行代码中实现,

其中,将 normalize 方法应用于向量将其变成单位向量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值