在行为树中,需要扩展的主要是行为节点和条件节点。一般来说,每当要创建一个节点时,就要新建一个节点文件。而对于一些简单的行为节点和条件节点,为了去掉新建文件的过程,可以写一个通用版本的行为节点和条件节点,以传入方法的方式来避免新建文件。 BTActionUniversal.lua BTConditio ...
分类:
编程语言 时间:
2018-09-16 20:51:00
阅读次数:
181
先看一下之前的行为节点是怎么设计的: BTAction.lua BTLog.lua 由上可见,行为节点的具体逻辑都是放在OnUpdate中的,那么问题来了,如果想在OnUpdate前执行一段逻辑,OnUpdate后也执行一段逻辑,类似于状态机那样,那么就需要对行为节点进行扩展。 BTAction.l ...
分类:
编程语言 时间:
2018-09-16 15:43:24
阅读次数:
321
条件节点和行为节点,这两种节点本身的设计比较简单,项目中编写行为树节点一般就是扩展这两种节点,而Decorator和Composite节点只需要使用内置的就足够了。 它们的继承关系如下: Conditional->Task Action->Task 代码如下: BTAction.lua BTCond ...
分类:
编程语言 时间:
2018-09-02 23:40:42
阅读次数:
267
题意 你被给定一棵带点权的n个点的有根数,点从1到n编号。 定义查询 query(x,k): 寻找以x为根的k大点的编号(从小到大排序第k个点) 假设没有两个相同的点权。 输入格式: 第一行为整数n,第二行为点权,接下来n-1行为树边,接下来一行为整数m,下面m行为两个整数x,k,代表query(x ...
分类:
其他好文 时间:
2018-08-02 13:51:21
阅读次数:
165
Composites Select 选择 从左往右执行其子节点,直到一个达成,则 Select 达成并返回上层,否则失败并返回上层 Sequence 队列 从左往右执行其子节点,直到一个失败,则 Sequence 失败并返回上层,否则达成并返回上层 Simple Parallel 模拟并行 包含一个 ...
分类:
其他好文 时间:
2018-07-05 21:31:07
阅读次数:
670
题意翻译 你被给定一棵带点权的n个点的有根数,点从1到n编号。 定义查询 query(x,k): 寻找以x为根的k大点的编号(从小到大排序第k个点) 假设没有两个相同的点权。 输入格式: 第一行为整数n,第二行为点权,接下来n 1行为树边,接下来一行为整数m,下面m行为两个整数x,k,代表query ...
分类:
其他好文 时间:
2018-07-03 14:41:21
阅读次数:
147
参考: 游戏AI—行为树研究及实现 待编辑 ...
分类:
其他好文 时间:
2018-06-28 21:10:58
阅读次数:
134
:sdk接入过那些:内存中数据量特别大的怎么处理,没答上,用序列化:二叉树的应用没答上:shader不太了解:不同操作系统的手机存储路径,在沙盒路径下:俄罗斯方块的减行算法:用二维数组:socket两种传输及应用:行为树的理解:nguisprite和uitexture区别:lua提了没问:打包安卓需 ...
分类:
其他好文 时间:
2018-06-20 12:57:45
阅读次数:
182
最近要做游戏ai,看了一下行为树的东西,因为用的java,所以主要看了jbt: https://github.com/gaia-ucm/jbt 这玩意分编辑器JBTEditor和核心库JBTCore两部分。在JBTEditor里边编辑好之后,导出xml文件;项目代码通过JBTCore库加载xml,然 ...
分类:
其他好文 时间:
2018-06-01 19:01:29
阅读次数:
315