Dialogue System 对话系统使用 -1

发布于 2023-04-15  577 次阅读


官方简介

Dialogue System 是Unity的一个分支对话系统。它不需要脚本,但旨在让程序员轻松扩展。

Unity 的对话系统让您:

  • 使用分支逻辑编写交互式对话。
  • 在灵活、完全可定制的 UI 系统中显示对话。
  • 定义玩家要完成的任务/任务。
  • 播放过场动画序列,例如镜头切换和音频。
  • 保存和加载游戏,并在场景变化时保留数据。
  • 使用本地化以不同语言显示文本和播放过场动画。
  • 从各种格式导入和导出,例如 articy:draft、Chat Mapper 和 CSV。


快速上手!

下载2.2.21版本

链接:https://pan.baidu.com/s/14_dX8fkZ10Krr35jYM9nHw?pwd=9kau

提取码:9kau


导入包

双击点击下载的包,全选,import进入你的项目!

导入完毕后,你应该会看到一个欢迎窗口!

Help 是官方文档的链接!
现在关掉这个窗口,移步去看看它自带的强力Demo把!


演示内容

演示场景在Plugins ► Pixel Crushers ► Dialogue System ► Demo

这两个可以点进去运行试一下! 挺秀的!
就像官方文档所说的,你可以在演示场景中做这些事情:

  • 获取启动代码(任务):与列兵哈特交谈以获取此任务。它涉及在隔壁房间找到密码并与计算机交互。
  • 敌人攻击(任务):与隔壁房间的NPC对话即可获得该任务。它演示了如何设置基于反击的任务,在本例中为杀戮任务。
  • 改变场景:与门互动改变场景。这演示了如何跨场景更改保留数据。
  • 保存和加载游戏:使用暂停菜单保存和加载游戏。

👉小试牛刀

跟着官方文档来自己做一个简单例子吧! 大概五分钟就可以了!

1.创建新场景

新建一个场景,就像你平时做的那样。

2.加入预制体

将预制件Assets Plugins Pixel Crushers Dialogue System Prefabs Dialogue Manager拖入你的场景

这个 GameObject 已经指向一个基本的对话 UI,现在就足够了。但是我们需要创建一个对话数据库。检查游戏对象。

3.创建数据库

在Initial Database字段旁边,单击Create

它会让你创建一个数据库初始化文件,你选择一个位置保存它咯!

接着,需要确保选中刚才创建的数据库!

4.创建对话

选中 'Conversations' 选项卡,然后点这个'+'

右键单击橙色的 START 节点并选择Create Child Node

在 Inspector 视图中,例如将Dialogue Text设置为“你还能坚持学下去吗?”。确保设置对话文本字段,而不是其他字段!

再次选择“创建子节点” 。将对话文本设置为“至死方休!”

就好了呀?!

5.创建对话双方

现在创建一个 Empty Game Object , 重命名为 Player !

现在创建一个 3D Cube 立方体 重命名为 NPC!

别忘记重置位置到 0 0 0!

6.为NPC配置对话触发器

选中 Npc , 添加对话系统触发器组件:

现在设置一下它!

👆 选择 触发 'Trigger' 为 [On Start], 即运行即触发

看一下关联的数据库 Reference Database,是不是你创建的! 如果不是请选择为你的!

7.配置Action

然后我们创建 Action 就是动作啦,可以创建多个,现在我们就创建一个

点这个下拉框,选择你创建的对话。 事实上由于我们锁定了数据库,所以这里能直接关联出我们创建的对话数据!

接着,我们把两个GameObject 关联上去

分别为对话动作的甲乙双方

没了... 就那么简单, 这样你一运行游戏,对话就开始了,你可以试试...