demo地址:http://www.adanghome.com/js_demo/21/
有三个三角形小车,其中默认行为是红车追绿车躲蓝车,绿车追蓝车躲红车,蓝车追红车躲绿车。在追逐的过程中,如果遇到墙壁就换方向。
其中红车可以受鼠标的影响,如果鼠标在画布中按下,红车就会无视默认规则,向鼠标位置移动。
============================================
这个demo中所有的运动都是基于2d向量的,没有直接进行x,y,三角函数等运算。另外,追逐与躲避都是封装好的方法,只需在主循环中调用seek或flee方法,即可完全自动地去改变坐标与方向,这在人工智能中是非常好用的方法。
将2D向量的运动以模块的形式封进了我的游戏引擎中。可按需加载。