Unity-odin-npbehave结合烟雨大佬的示例

Unity_odin-nphave-基于烟雨大佬的分享

基于烟雨大佬分享

大家可以去看大佬的文章博客,里面很多很多干货
https://www.lfzxb.top/a-visual-tool-for-npbahave/

基础

1.准备好Odin插件
2.准备好unity

开始

1.扩展Odin的NODE节点功能(即面板上显示的节点)
由于提供的节点是abstract partial关键字,所以可以分文件填充内容,我们以最基础的行为树节点数据展开。
这里拓展了一个获取NP_NodeDataBase数据的虚函数,后面各个类型节点都会实现自己不同的数据方式,这里的数据才是我们最终需要使用的数据
在这里插入图片描述
2.构造行为树节点的基类,同时注意类型传递typeof (NeverbeUsedCanvas),这样在我们用到的canvas里面不会有这个基类的选择
在这里插入图片描述
3.在这个基类上扩展各种行为树功能节点,具体就不一一介绍,注意类型需要传递我们要使用的canvas类型typeof (NPBehaveCanvas)
在这里插入图片描述
4.构造我们自己需要使用的canvas界面基类,即上面各个类型需要的类型,并提供一些基础功能:1.填充数据字典npDataSupportorBase(里面包含了两个,一个是行为树的基础数据节点,一个是技能数据节点);2.保存文件,序列化与反序列化上面数据节点;3.烟雨大佬这里还提供了一个反序列测试的功能
在这里插入图片描述

在这里插入图片描述
5.构筑真正的行为树Canvas,基于上面的基类,增加了行为树数据字典,以及技能数据字典两个数据功能。
在这里插入图片描述
6.自动填充功能说明:清空两个数据字典,然后根据canvas里面的节点,进行遍历,获取各个节点内部的真正数据内容,然后填充到两个数据字典内。需要注意行为树节点,有个link需要设置,用于判定行为树的流程

自动填充行为树节点数据

自动填充技能节点数据

至此ODIN结合NPBehave的基础数据就做好了,接下来就是获取这些NPBehave基础数据,然后行为树跑起来,等有空再来续写

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值