浅析游戏AI的原理与实现

本文探讨游戏AI的重要性及实现方式,包括朴素AI、有限状态机、行为树、目标导向行为规划、协同多智能体和机器学习。游戏AI不仅为NPC设定行为逻辑,还注重与玩家互动的合理性和公平性,未来将融合更多前沿AI技术,提升游戏体验。
摘要由CSDN通过智能技术生成

目录

一、什么是游戏AI

二、为什么需要游戏AI

三、游戏AI的主要实现方式

        1.朴素AI

        2.有限状态机(Finite-state machine,FSM)

        3.分层有限状态机(Hierarchy-FSM,HFSM)

        4.行为树(Behavior Tree,BT)

        5.目标导向的行为规划(Goal-Oriented Action Planning,GOAP)

        6.协同多智能体(Group AI&Meta AI)

        7.机器学习(Machine Learning)

四、游戏AI与其他行业AI的区别

五、总结与展望

  • 一、什么是游戏AI

        严格意义上来讲,与其他领域的AI相比,许多类型的游戏AI实际上都不能称之为AI。大多数游戏里的AI实际上只是一些能够给玩家带来一定智能程度的“错觉”的智能体。所以,简单来说,游戏AI就是游戏中那些非玩家控制的游戏角色,也就是NPC的行为逻辑。

  • 二、为什么需要游戏AI

        在游戏中,虚拟的游戏角色的行为深刻影响着玩家在游玩这个游戏时候的感受,而游戏AI决定了这些虚拟游戏角色背后的行为逻辑。这种行为逻辑真实与否,直接影响了玩家的游戏体验。

        打个比方,艾尔登法环中的许多敌人都有一个“药检”系统,敌人一旦检测到玩家使用元素瓶,敌人就会发了疯似的来打断玩家。单从这一点来看,这不是一个优秀合理的游戏AI。甚至因此有玩家调侃到,哪怕你在元素瓶的物品描述上加上这样一句话——使用元素瓶这件事在交界地被视为是最恶劣的嘲讽方式,都能使这一事件合理。由此可见,游戏AI对于玩家的游戏体验起到重要作用。

  • 三、游戏AI的主要实现方式

        1.朴素AI

        游戏AI最简单的实现方式,就是用if else这类的简单分支语句对NPC的行为进行分类和判别。

        打个比方,有一个敌人在巡逻,我们可以用朴素AI为他添加一些规则:

  • 如果视线内没有人就巡逻
  • 如果视线内有玩家就攻击
  • 如果生命值降为0就死亡

        看上去好像没有什么问题,但是如果玩家接近这个NPC,之后又离开了这个NPC的视线呢?这个敌人就会在攻击结束后和没事人继续回去巡逻,这显然不符合常理。而且实际上游戏中的情况远比这种情况要复杂,虽然单纯使用这种简单的分支语句,在理论上也可以通过各种嵌套实现很复杂的行为逻辑,但且不说这段代码有多让人头疼,最主要的是其代码的复用性太差,每个不同类型的敌人都要从头构建一个新的行为逻辑,所以这里我们要引入有限状态机。

        2.有限状态机(Finite-state machine,FSM)

        有限状态机是将游戏内NPC的各类行为抽象为几个状态,再通过事件将不同的状态相互连接,组成一个状态机。在某个特定事件发生时,状态才将进行转换。

        还是以刚才巡逻的敌人举例,我们可以将这个敌人分为巡逻、警戒、攻击、死亡四个状态,再通过一些事件进行连接,如图1所示

图表 1有限状态机

        在有限状态机下,通过很简洁的代码就可以实现复杂的行为逻辑。并且最重要的是,代码可以封装复用了,不同类型的单位可能只需要修改几个切换状态的条件,大大降低了工作量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值