首页 > 其他 > 详细

【转】利用Behavior Designer制作敌人AI

时间:2017-02-06 00:02:31      阅读:290      评论:0      收藏:0      [点我收藏+]

http://www.unity.5helpyou.com/3112.html

本篇unity3d教程,我们来学习下利用Behavior Designer行为树插件来制作敌人AI,下面开始!

Behavior Designer插件里,主要有四种概念节点,都称之为Task。包括:

(1) Composites  组合节点,包括经典的:Sequence,Selector,Parallel

(2) Decorator 装饰节点,顾名思义,就是为仅有的一个子节点额外添加一些功能,比如让子task一直运行直到其返回某个运行状态值,或者将task的返回值取反等等

(3) Actions     行为节点,行为节点是真正做事的节点,其为叶节点。Behavior Designer插件中自带了不少Action节点,如果不够用,也可以编写自己的Action。一般来说都要编写自己的Action,除非用户是一个不懂脚本的美术或者策划,只想简单地控制一些物件的属性。

(4) Conditinals 条件节点 ,用于判断某条件是否成立。目前看来,是Behavior Designer为了贯彻职责单一的原则,将判断专门作为一个节点独立处理,比如判断某目标是否在视野内,其实在攻击的Action里面也可以写,但是这样Action就不单一了,不利于视野判断处理的复用。一般条件节点出现在Sequence控制节点中,其后紧跟条件成立后的Action节点。

下面介绍一个简单的敌人AI:

当处于监视范围内,跑向玩家;当处于攻击范围内,攻击玩家;否则呆在原地。用行为树表示就是:

技术分享

技术分享

技术分享

其中当前行为树的变量与全局变量为:

技术分享

效果图:

技术分享

制作简单的AI确实不需要写代码,不过配置起来确实有点麻烦了。可以根据需求,编写自定义的节点来组成复杂的AI。

当游戏需要大量的AI时,Behavior Designer确实是一个不错的选择,因为自定义的节点可以不断被重用了。好了,本篇unity3d教程到此结束,下篇我们再会

 

【转】利用Behavior Designer制作敌人AI

原文:http://www.cnblogs.com/mimime/p/6368756.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!