Dialogue System for Unity快速上手(一)

最近在学习RPG游戏中的NPC对话、任务系统、剧情系统,接触到这个强大的Unity插件,但是国内基本没有这个插件的教程,就连官方的教程也因为插件版本的更新,有很大区别。于是我做了一些笔记分享出来。由于本人也只是业余选手,如果大家有什么不会的地方,都不要问我。需要注意的是,笔记中使用的插件版本是 2.0.3

Dialogue System for Unity简介

引用官方的一段话,插件官方下载地址 点击查看

Dialogue System for Unity 可以轻松地为您的游戏添加交互式对话和任务。 它是一个完整,强大的解决方案,包括基于可视节点的编辑器,对话UI,过场动画,任务日志,保存/加载等。 核心是一个精简,高效的会话系统。 包含大量的可选附件使您可以快速轻松地将对话放入项目并将其与其他产品集成。 不需要脚本,包含完整的C#源代码。

Dialogue System for Unity makes it easy to add interactive dialogue and quests to your game. It's a complete, robust solution including a visual node-based editor, dialogue UIs, cutscenes, quest logs, save/load, and more. The core is a lean, efficient conversation system. A large collection of included, optional add-ons make it quick and easy to drop conversations into your project and integrate them with other products. No scripting is required, and complete C# source is included.

第一次对话

首先导入插件到项目中,导入成功后,会弹出一个 Dialogue System for Unity (后面都简称DS)的 Welcome 窗口,包括官方手册、API文档、视频教程、论坛和一些核心功能,我们关闭窗口。

首先将 Assets/Plugins/Pixel Crushers/Dialogue System/Prefabs/Dialogue Manager.prefab 拖到场景中。

然后创建一个 Dialogue Database 。我们可以通过选中 Dialogue Manager 游戏物体,点击 Dialogue System Controller 组件中的 Create 按钮去创建。也可以直接在 Project 视图中右键 - Create - Pixel Crushers - Dialogue System - Dialogue Database 去创建。

Dialogue System for Unity快速上手(一)

如果是点击 Create 创建的,会自动设置为 Initial Database 。如果是自己手动创建的,需要将 Project 视图中创建的 Dialogue Database 拖到 Dialogue System Controller 组件下的 Initial Database上。

创建成功弹出 Dialogue 窗口:

Dialogue System for Unity快速上手(一)

我们点击 Conversations ,来编辑我们的对话内容。首先点击右上角的 + 号,来创建对话。创建后可以在 Inspector 面板中,修改这个对话的标题Title。

Dialogue System for Unity快速上手(一)

然后选中对话编辑器中的 <START> 节点,右键 Create Child Node ,创建第一个子节点。然后再选中第一个子节点,创建第二个子节点。

选中节点后,我们可以在 Inspector 面板中设置节点的各种属性, 这里我们简单体验,只需要设置 Dialogue Text 说话内容即可。输入说话内容后,点击以下 Dialogue 窗口以外的地方,再点击 Dialogue 窗口就会刷新UI,我们能发现对话编辑器里对应的节点变成了我们设置的 Dialogue Text 说话内容。

还有注意我们创建的2个子节点的颜色,默认情况下,一个是深灰色,一个是蓝色。不同的颜色表示不同的说话方(插件里叫 Actor,演员的意思)。Actor 我们可以在 Dialogue 窗口的 Actors 选项卡里进行设置,选中 Actors ,我们可以看到默认有2个 Actor ,我们点击 Actor 左边的拖动排序图标,在 Inspector 面板中会显示这个 Actor 的属性。

切换回 Conversations 选项卡,随便选中一个我们创建的子节点,可以看到 Inspector 面板中的 Actor 和 Conversant ,现在应该知道他们表示什么意思了吧。我们可以点击下拉选项进行修改,也可以点击右边的上下箭头的图标进行替换位置。

最后创建一个空对象作为触发对话的触发器,我们将空对象命名为 Player ,然后添加 Dialogue System Trigger 组件。设置 Trigger 为 On Start ,也就是场景刚加载就触发。然后点击 Actions 下的 Add Action 按钮,并将 Conversation 设置为我们在 Dialogue Database 中创建的回话 FirstConversation 。

Dialogue System for Unity快速上手(一)

最后需要在场景中存在一个 EventSystem ,如果没有需要创建。

然后运行,可以看到显示了一条对话和一个选项,我们的第一次对话就完成了。

Dialogue System for Unity快速上手(一) Dialogue System for Unity快速上手(一)

六阿哥

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: