【推荐100个unity插件之7】使用BehaviorDesigner插件制作BOSS的AI行为树

简介: 【推荐100个unity插件之7】使用BehaviorDesigner插件制作BOSS的AI行为树

前言

Behavior Designer是一个行为树插件,是一款为了让策划,程序员,美术人员方便使用的可视化

编辑器。Behavior Designer提供了强大的AP1可以让你轻松的创建tasks(任务),配合

uScript和PlayMaker这样的插件,可以不费吹灰之力就能够创建出强大的Al系统,而无需写

行代码。(不懂PlayMaker的,我后面在单独出文章介绍一下,可以期待一下)

BehaviorDesigner插件的基础使用,发哥已经做了详细的介绍了,但是我发现例子很少,于是就有了这篇文章,我自己琢磨实现一个简单的BOSS的AI行为树,把思路分享出来,你可以依据这些思路进行再扩展

不懂BehaviorDesigner基础操作的可以去看发哥的这篇文章:BehaviorDesigner插件制作AI行为树

素材

插件

1、AssetStore下载

插件可以在AssetStore下载到,地址:https://assetstore.unity.com/packages/tools/visual-scripting/behavior-designer-behavior-trees-for-everyone-15277

2.我放了1.7.1版本的到GitCode上,地址:

https://gitcode.net/unity1/unitybehaviordesigner

一、基础使用

新建2d项目,搭建环境,主角和敌人boss,给boss新增animator动画,大致连线

导入BehaviorDesigner插件,点击菜单Tools/Behavior Designer/Editor即可打开编辑器窗口

并在敌人身上创建行为树,空格,新增Repeater节点,并勾选永远循环

打印测试,sequence节点控制从左到右执行

每3秒打印"打印日志"

运行效果

二、敌人物理攻击

新增脚本Attack

using UnityEngine;
using BehaviorDesigner.Runtime;
using BehaviorDesigner.Runtime.Tasks;
public class Attack : Action
{
    public Animator animator;
    public GameObject player;
 
    public override void OnStart(){
      //切换动画状态为攻击
        animator.SetTrigger("Attack");
    }
    public override void OnEnd(){
        Debug.Log("打印2");
    }
}

运行效果,敌人每3秒发动一次攻击

三、敌人面向玩家

新增FacePlayer脚本

using BehaviorDesigner.Runtime.Tasks;
using UnityEngine;
//始终面向主角
public class FacePlayer : Action
{
    private float baseScaleX;
    public GameObject player;
    public override void OnAwake()
    {
        baseScaleX = transform.localScale.x;
    }
    public override TaskStatus OnUpdate()
    {
        Vector3 scale = transform.localScale;
        scale.x = transform.position.x > player.transform.position.x ? baseScaleX : -baseScaleX;
        transform.localScale = scale;
        return TaskStatus.Success;
    }
}

运行效果,先朝向玩家再发起攻击

四、敌人法术攻击

新增Cast脚本

using UnityEngine;
using BehaviorDesigner.Runtime.Tasks;
public class Cast : Action
{
    public GameObject player;
    public GameObject spell;
    public override void OnStart(){
        //生成技能攻击特效
        float playerH = player.gameObject.GetComponent<SpriteRenderer>().sprite.bounds.size.y; //通过SpriteRenderer获得人物高度
        Object.Instantiate(spell, player.transform.position + new Vector3(0, playerH, 0), Quaternion.identity);
    }
}

这次我们用Set Trigger节点控制动画切换

运行效果,大概流程就是开始等待3秒,面朝主角,切换动画为魔法攻击动作,再等待0.5秒后切换回Idle动画,并运行Cast代码,触发攻击特效,一直循环

五、随机进行攻击

关键就是Random Selector节点的使用

中间插入Random Selector节点,分别连接两种攻击模式,运行效果

六、敌人不同的阶段

你可能还希望boss在不同阶段有不同的效果,比如半血以下狂暴,不同技能等

新增IsHealthUnder脚本,我这里就简单举个例子

using BehaviorDesigner.Runtime.Tasks;
public class IsHealthUnder : Action
{
    public float health;
    public override TaskStatus OnUpdate()
    {
        return health < 50 ? TaskStatus.Success : TaskStatus.Failure;
    }
}

新增Selector节点

运行效果,因为是测试,我这里就手动改敌人的血量了

当血量低于50时,处于第二阶段,就会走左边,打印日志,你可以在这里加入敌人新的状态和技能,或者过场动画

当血量大于100时,处于第一阶段,敌人还是正常走前面的逻辑

源码

https://gitcode.net/unity1/unity-ai-behavior

目录
相关文章
|
5月前
|
人工智能 自然语言处理 前端开发
Trae插件Builder模式深度测评:从编程助手到AI工程师的进化
Trae插件最新推出的Builder模式标志着AI辅助编程工具从简单的代码补全向“AI工程师”角色的转变。该模式允许开发者通过自然语言描述项目需求,自动生成完整的项目结构、代码文件和开发流程,支持VSCode、JetBrains IDE及在线Web版本。Builder模式的核心功能包括自然语言项目初始化、智能项目架构设计和多文件协调代码生成,显著提升了开发效率,降低了技术门槛。然而,它在处理复杂业务逻辑和高度定制化需求方面仍有局限。未来,Builder模式将集成云部署、测试套件生成和DevOps流水线等功能
1162 2
|
3月前
|
机器学习/深度学习 人工智能 算法
深度强化学习在异构环境中AI Agent行为泛化能力研究
随着人工智能技术的迅猛发展,AI Agent 在游戏、智能制造、自动驾驶等场景中已逐步展现出强大的自适应能力。特别是深度强化学习(Deep Reinforcement Learning, DRL)的引入,使得智能体能够通过与环境的交互,自动学习最优的行为策略。本文将系统性地探讨基于深度强化学习的AI Agent行为决策机制,并结合代码实战加以说明。
深度强化学习在异构环境中AI Agent行为泛化能力研究
|
3月前
|
机器学习/深度学习 人工智能 文字识别
浏览器AI模型插件下载,支持chatgpt、claude、grok、gemini、DeepSeek等顶尖AI模型!
极客侧边栏是一款浏览器插件,集成ChatGPT、Claude、Grok、Gemini等全球顶尖AI模型,支持网页提问、文档分析、图片生成、智能截图、内容总结等功能。无需切换页面,办公写作效率倍增。内置书签云同步与智能整理功能,管理更高效。跨平台使用,安全便捷,是AI时代必备工具!
223 8
|
3月前
|
人工智能
伙伴型AI插件
本项目实现了一个具备语义记忆与反馈闭环的AI伙伴插件,支持语义检索、记忆权重调整及即时反馈,通过`pip install -e .`即可快速部署体验。
|
3月前
|
消息中间件 人工智能 机器人
vx自动回复机器人,ai自动回复机器人,微信自动回复脚本插件
这个微信自动回复机器人包含主程序、配置管理、工具函数和单元测试模块。主程序使用itchat库实现微信登录和消息处理
|
3月前
|
人工智能 小程序 开发者
AI运动识别插件版本再发布迭代更新,大量新特性更新
上周,我们对全景AI运动解决方案的uni APP版与小程序版插件进行了新一版迭代更新。其中,uni APP版本显著提升了识别检测性能,修复了已知问题,并新增多项实用功能,全面优化用户体验。在v0.7.0版本中,推出了`convertFrameToBase64()`接口,便于开发者在体测、赛事等场景中更高效地处理帧图像,简化开发流程,助力AI运动应用快速实现。
|
6天前
|
人工智能 安全 中间件
阿里云 AI 中间件重磅发布,打通 AI 应用落地“最后一公里”
9 月 26 日,2025 云栖大会 AI 中间件:AI 时代的中间件技术演进与创新实践论坛上,阿里云智能集团资深技术专家林清山发表主题演讲《未来已来:下一代 AI 中间件重磅发布,解锁 AI 应用架构新范式》,重磅发布阿里云 AI 中间件,提供面向分布式多 Agent 架构的基座,包括:AgentScope-Java(兼容 Spring AI Alibaba 生态),AI MQ(基于Apache RocketMQ 的 AI 能力升级),AI 网关 Higress,AI 注册与配置中心 Nacos,以及覆盖模型与算力的 AI 可观测体系。
|
12天前
|
存储 人工智能 Serverless
函数计算进化之路:AI 应用运行时的状态剖析
AI应用正从“请求-响应”迈向“对话式智能体”,推动Serverless架构向“会话原生”演进。阿里云函数计算引领云上 AI 应用 Serverless 运行时技术创新,实现性能、隔离与成本平衡,开启Serverless AI新范式。
204 12
|
8天前
|
设计模式 机器学习/深度学习 人工智能
AI-Native (AI原生)图解+秒懂: 什么是 AI-Native 应用(AI原生应用)?如何设计一个 AI原生应用?
AI-Native (AI原生)图解+秒懂: 什么是 AI-Native 应用(AI原生应用)?如何设计一个 AI原生应用?

热门文章

最新文章