游戏开发之-AI行为树
2014-03-12 13:54
183 查看
行为树图:
行为树节点(Behavior Tree Nodes):
· 选择节点(Selector): 顺序执行子节点,只要它的一个子节点返回true,则整个分支返回true,反之返回false,类似程序中的逻辑或(OR)。
· 顺序节点(Sequence) :顺序执行子节点,只要它的一个子节点返回false,则整个分支返回false,反之返回true, 类似程序中的逻辑与(AND)。
· 条件节点(Condition) : 属于叶子节点(该种节点不允许有任何子节点),用于描述一个条件是否成立。
· 行为节点(Action) : 属于叶子节点(该种节点不允许有任何子节点),用于描述一个最终执行的动作,一般返回true。
其中选择节点(Selector), 顺序节点均属于组合节点。组合节点是一个分类概念,并非指一个节点的实例。
实现行为树(Behavior Tree):
状态机(State Machine)
说到状态机的概念,也许很多程序员都相当熟悉。就拿上面的行为树来说,仅仅是描述了一个怪物的AI,但其中涉及的状态可谓不少。在传统的设计思路中,玩家进入怪物的视野时,怪物的状态将会马上发生改变而从主动攻击玩家。(感知系统)
状态(State),指的是对象的某种形态,在当前形态下可能会拥有不同的行为和属性。
状态机(State Machine),指控制对象状态的管理器。对象的状态不会无端端改变,它需要在某种条件下才会变换。比如上面定义的行为树中的[巡逻]行为,它就规定了必须是在怪物视野中找不到目标的情况下才会变更的状态。一旦有玩家进入了它的视野,它将马上切换为攻击状态。总而言之,状态会在某个事件触发之后变更。不同的状态也有可能决定了对象的不同属性和行为。
行为树节点(Behavior Tree Nodes):
· 选择节点(Selector): 顺序执行子节点,只要它的一个子节点返回true,则整个分支返回true,反之返回false,类似程序中的逻辑或(OR)。
· 顺序节点(Sequence) :顺序执行子节点,只要它的一个子节点返回false,则整个分支返回false,反之返回true, 类似程序中的逻辑与(AND)。
· 条件节点(Condition) : 属于叶子节点(该种节点不允许有任何子节点),用于描述一个条件是否成立。
· 行为节点(Action) : 属于叶子节点(该种节点不允许有任何子节点),用于描述一个最终执行的动作,一般返回true。
其中选择节点(Selector), 顺序节点均属于组合节点。组合节点是一个分类概念,并非指一个节点的实例。
实现行为树(Behavior Tree):
状态机(State Machine)
说到状态机的概念,也许很多程序员都相当熟悉。就拿上面的行为树来说,仅仅是描述了一个怪物的AI,但其中涉及的状态可谓不少。在传统的设计思路中,玩家进入怪物的视野时,怪物的状态将会马上发生改变而从主动攻击玩家。(感知系统)
状态(State),指的是对象的某种形态,在当前形态下可能会拥有不同的行为和属性。
状态机(State Machine),指控制对象状态的管理器。对象的状态不会无端端改变,它需要在某种条件下才会变换。比如上面定义的行为树中的[巡逻]行为,它就规定了必须是在怪物视野中找不到目标的情况下才会变更的状态。一旦有玩家进入了它的视野,它将马上切换为攻击状态。总而言之,状态会在某个事件触发之后变更。不同的状态也有可能决定了对象的不同属性和行为。
相关文章推荐
- 开发游戏AI之行为树
- 采用行为树快速开发游戏AI
- MMORPG大型游戏设计与开发(服务器 AI 事件)
- 趣说游戏AI开发:对状态机的褒扬和批判
- AI真的会杀人?DeepMind开发了二维网格游戏来做测试
- 【Visual C++】游戏开发笔记十五 游戏人工智能(一) 运动型游戏AI
- 游戏AI之行为树(中)
- 游戏开发之AI的编写
- Unity3D研究院之游戏开发中的人工智能AI
- [原]【Visual C++】游戏开发笔记十五 游戏人工智能(一) 运动型游戏AI
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二十九) 人工智能(AI)之追踪者
- 使用行为树(Behavior Tree)实现游戏AI
- 游戏AI - 行为树Part1:简介
- Go游戏服务器开发的一些思考(十二):行为树behavior3go介绍
- cocos2d-x游戏开发系列教程-坦克大战游戏之敌方坦克AI的编写
- 使用行为树(Behavior Tree)实现游戏AI
- Cocos2d-x怪物智能AI怪物也有智商----之游戏开发《赵云要格斗》(6)
- 使用行为树(Behavior Tree)实现游戏AI
- 【Unity3D自学记录】游戏开发之怪物AI
- 游戏中的人工智能(AI)和行为树科普