How to make a Dialogue System in Unity

来源:Brackeys  

Brackeys的Dialogue System教程学习笔记。

------------------------------------------------------------------

1.UI

How to make a Dialogue System in Unity  

2.创建Dialogue Manager


新建C#命名为Dialogue用来设定数据格式,打开并编辑。

How to make a Dialogue System in Unity


新建C#命名为DialogueTrigger,挂在TestButton上,作用是使用单例来调用DialogueManager 打开并编辑

How to make a Dialogue System in Unity


新建C#命名为DialogueManager,同时Hierarchy下新建同名空对象把该脚本挂上去,打开并编辑。

How to make a Dialogue System in Unity

How to make a Dialogue System in Unity


然后填入对话内容,并拖入各项引用

How to make a Dialogue System in Unity


How to make a Dialogue System in Unity


How to make a Dialogue System in Unity


测试,已经可以摁Button就一句一句显示啦。


3.添加各种效果


1.对话框淡入淡出效果


选中DialogueBox,添加Animation

How to make a Dialogue System in Unity


新的动画命名为DialogueBox_Open。开始录制:复制该对象的Y的坐标,然后稍微改变一下y的坐标,再把复制好的原先的坐标粘贴回去,结束录制。

How to make a Dialogue System in Unity


新建另一个动画命名为DialogueBox_Close,开始录制:在Scene里,摁住Shift把对话框拉到下方看不到的地方,结束录制。

How to make a Dialogue System in Unity


然后在Animator里把Close动画设为默认,新建bool命名为IsOpen,close→open选择true,取消Has exist time,open→close选择false。

How to make a Dialogue System in Unity


接着编辑DialogueManager脚本设置Animator

How to make a Dialogue System in Unity

How to make a Dialogue System in Unity


拖入引用

How to make a Dialogue System in Unity


点击测试,点击Testbutton对话框会浮上来,对话结束后对话框会沉下消失。


2.对话逐字显示效果


通过使用Coroutine来实现。接着编辑DialogueManager脚本

How to make a Dialogue System in Unity

How to make a Dialogue System in Unity


完毕。