flash 游戏 3D
  • 2008-07-22关于游戏中的AI-感知(原创,希望转载的话通知一下) - [flash 游戏 3d]

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://dayuhome.blogbus.com/logs/25278690.html

    游戏的AI,是游戏引擎中最值得探讨和深入研究的课题,也是引擎中最具有技术含量的部分之一。因为复杂的AI通常需要大量的运算,这些运算可以让一个游戏缓慢到无法忍受的地步。

    当你玩第一人称射击,策略游戏或者是rpg游戏,形形色色的怪物和各种NPC的行为,你会发现他们分别拥有一定的AI,甚至有的还真的有相当的智能。

    写完触发器编辑器的框架和执行核心以后我一直在寻找一种好的as3游戏引擎,目前为止没有找到合适的。所以暂时决定选择我自己开发的一款类似血腥大地的俯视射击游戏作为基础,在其上增加AI这个核心要素。

    能够作出类似人类真实行为选择的agent应该具备一定的感知能力,这种感知将以一种方式存在于每个agent的数据结构中。主要的感知行为是对环境的理解。通常包括视觉和听觉,然后记录到自己的大脑中,在必要的时候拿出来进行利用。agent将记住任何发生在其身边的事情。假设现在有一射击游戏,其中的电脑玩家能够在游戏的环境中自由活动,当其看到食物的时候将记住其所在,当其看见有敌人和朋友的时候也记住其位置,这需要3个队列,拥有3个队列,foods,friends,enemys。这是他们检测到的食物,朋友和敌手。当游戏中的一个人物移动时候,会发出一个移动的消息(事件),向周围广播,在这个范围内的个体将得到这个消息,并根据消息类型来检测是否能够得到该消息(如移动消息,就要判断能否看到该消息的主人,或者足够近,则能听到,但是无法判断其主人),再查看是否已经是自己监听的对象了,如果已经存在,则只需刷新该记录。有了感知则一切基于其的决策和行为都有了依据。而决策通常是AI中最具挑战的工作。将在下一期描述。

     

     

     

     

     

     


    收藏到:Del.icio.us




    评论

  • 沙发。
    回复皮皮狼说:
    ...好久没见
    2008-07-24 19:47:11