Unity 对话气泡

前言:

unity真是啥都得自己写,还是ue4牛逼。

对话气泡功能挺实用的,下图是最终的效果。

Unity 对话气泡_第1张图片

准备阶段:

文字逐字显示动画用到了DOTWeen

需要自己用PS画对话气泡

需要自行学习相关的布局组件、

开始制作:

1.PS建一个100*100的对话气泡

Unity 对话气泡_第2张图片

Unity 对话气泡_第3张图片

导入到项目里面,并且打开

Unity 对话气泡_第4张图片

Unity 对话气泡_第5张图片

拖动绿线,上下左右到1像素,点击应用

上面是UI的结构,Image是Text的父级

所以Text能够重叠在图片上面。

Unity 对话气泡_第6张图片

图像类型一定要改成切片,这也是九宫格必备的。

Unity 对话气泡_第7张图片

Image加入这个组件,用来自适应文本框。此时文本框变大的话,图片也会变大。

此时就需要写代码了。文本框我们需要让它最大宽度保持200

自己新建一个组件,然后

Unity 对话气泡_第8张图片

基本上按照我上面的意思来就成。

文字逐字动画可以这样

using DG.Tweening;

Text b = this.view["Image/Text"].GetComponent();

b.DOText("123456789123456789123456789", 5);

b是text,DOText就是动画。需要引入DOTWeen

 

如何对话气泡跟随npc呢?

第一种做法,直接把UI弄到npc的下面,但是会受到缩放的影响。

第二张做法,弄到屏幕上,然后每帧设置位置,查找NPC的位置,然后转换为屏幕坐标。

Unity 对话气泡_第9张图片

如果遇到位置偏移问题要看看轴心,我的气泡的轴心是右下角,也就是

Unity 对话气泡_第10张图片

图片中的1,0 多调试一下总能弄好的。

以上就是大概的方向,如果还不懂请联系我QQ2659365465,50元

 

你可能感兴趣的:(Unity)