unity3d实现插件快速开发对话系统

来源:互联网 发布:如何注册公司知乎 编辑:程序博客网 时间:2024/05/20 17:10

作为一款RPG游戏,对话系统的开发是必不可少的。不对,现在几乎什么游戏都需要对话系统,这点可是毋庸置疑的。今天我给大家介绍一款对话插件,叫做”Localized Dialogs Cutscenes LDC “,百度就有了。这款插件可以大大减少代码的复杂性,而且功能强大,不单只是开发对话的功能,还有其他的开发模块。今天我只教大家怎么去使用它快速开发对话系统,其他模块自己细心研究。当然,你编程能力强大的话,可以完全用代码自己去实现一个完整的对话系统,什么绘制GUI啊,背景啊,文字数据啊,反正我是搞不懂的了,废话不多说,开始!

     首先我们导入这个插件,在GameObject—>LDC—>Create Dialog UI这时候系统会提示我们把这个作为预设,我们就照做呗,在Assets中创建一个Folder并且命名为prefabs,我们把刚才创建的拉到这个文件里面。然后在Tag标签中新建一个DialogController标签。然后就可以GameObject—>LDC—>Create New Dialog,这是一个模块,所有对话都在这里实现的。别急,我们先看第一个创建的Dialog UI,这里有很多设定。主要在Supported Languages勾选Chinese,English是自动勾选的,其他设定默认就好,深入研究可以自行探讨!


    然后就可以在New LDC Dialog写对话了,重点依次介绍。Start ID 1:表示从第一个ID开始,这里可以从暴漫头像第二模块看到我把它的ID设置为1。Start In X Sec 1,表示当对话被执行时延时1秒开始。Auto Play一般会默认勾选。Dialog Style:Next Button,这是开发对话的模块,而且下面还有声音组件,是用来添加对话录音的,这里我就没有添加了。

     看暴漫的第二个模块。Next Screen:2表示当对话执行完开始第二个ID为2的对话,请看第四张图。Seconds To Show:3执行第二个对话时候间隔3秒。这里我勾选了Hide Next UI Button,因为对话不需要按钮,一般勾选

      第三个模块不介绍,直接看第四个模块。我们选择Chinese就可以在Translation(Chinese)中进行编对话。

      看最后一张萌妹纸图。这是最后的对话,所以把Next Screen设为0,并且重点要勾选Last Dialog和Destroy At End,否则对话完后对话框不会消失!





    运行后发现可以,但是感觉对话框很丑,而且文字想换。这时候我们在Assets中找到

搜搜就有。Custom Styles里的内容很重要,对话框的设计主要是Dialog Text,Header Text,Background Box,这里省略一万字,我这里已经设计好了,自己研究里面的内容就好!


      现在还有一个大问题,就是一运行游戏时,对话框自动弹出自行对话。而对话一般设计在某种剧情的人物互相对话才对。所以我们需要脚本控制,可别想使用插件就不需要编程了,那是不可能的,插件只是辅助的作用,我们创建两个C#的脚本,PlayTalk和RoleTalk,分别赋予给主角和对话的NPC。下面看脚本和注释。


     做好之后,把设计好的LDC Dialog拖拽到NPC的RoleTalk脚本面板中,运行看效果。好吧,这时候我们走到NPC面前按下空白键就可以执行对话了。对话的内容上看我承认我比较无节操!欺负一个女纸真的好吗-_-||




原创粉丝点击