06 2010 档案
摘要:对于追捕行为,它非常类似寻找行为。其实追捕的最后一个动作就是调用寻找。追捕的本质是预测目标所要到达的位置并事先赶到。
阅读全文
摘要:到达行为在很多场合都可以被当作是寻找行为。实际上,它们之间的算法和处理方式都一样。唯一不同的是,在到达模式中,一辆机车在到达目标的某一距离时,会变成一种精确模式慢慢地靠近目标点。
阅读全文
摘要:避开行为与寻找行为彻底相反。
阅读全文
摘要:寻找行为只是把机车移动到指定点。
阅读全文
摘要:转向机车类继承机车类并增加转向行为。每个行为都被定义成公开函数,在每帧或者一段时间间隔内调用以实现对应的转向力。通常所有转向力在调用之后再调用机车的update函数。
阅读全文
摘要:机车类是转向角色的基类,但它不提供任何转向行为,只处理与运动相关的基本内容,如位置,速度,质量以 及角色接触场景边缘后的反应(反弹还是穿越出现在另一边)。转向机车(SteeredVehicle)类继承机车类,并为之增加转向行为。使用这样的结构 其目的是为了让机车类可以用于仅需要移动而不需要转向行为的对象,同时也可以让转向机车类不考虑基本运动的细节而专心实现转向功能。
阅读全文
摘要:转向行为已经被各种语言实现过多次了,其最底层是用向量来描述的(也是最常见的实现方式)。
概括的看,一个向量由两部分组成:一个方向和一个大小。比如,一个运动中对象的速度由它要去哪里(方向)和移动快慢(大小)两部分组成。因此,把速度看作一 个向量是最贴切不过的。加速度——任何改变对象速度的作用力——同样也是由力的方向和大小组成(另一个向量)。向量同样也可以用来描述对象间的位置关系, 其中大小代表距离,方向代表角度。
向量还可以用来表示一个角色(脸)的朝向,这种情况下就只管方向,而忽视大小,也可以说大小等于1。这样的向量叫做单位向量(unit vector)。实际上,只有一单位长度的向量,在数学运算上能起到很大的优化作用。
向量的所有这些特性对转向行为来说都很有用,因为速度,队伍方向,对象间距离,对象的朝向都会被大量的使用。
阅读全文
摘要:转向行为(steering behaviors)这一术语,指的是一系列使对象行动起来像似长有智商的算法。这些行为都归于人工智能或人工生命一类,是让对象呈现出拥有生命一般,对如何移动到目的地、捕捉或逃避其它对象、避开障碍物、寻求路径等做出因地适宜的决定。介绍行为,了解行为,展示一个实现这些行为的框架。一些行为根据复杂度不同,实现起来有多种不同方式。所有行为都不存在一个标准或者正确的做法,实现上给出的也是很简单的样式。换句话说,仅从介绍和展示的角度去考虑实现。
阅读全文