Unity血条实现

最近开发一款游戏,涉及到血条的制作,前期上网找了挺多文章,最后总结起来应该就如下几种实现方式:1.通过slider实现;2.通过scrollbar实现;3.控件组合,比如用控件将血条边框和红条组合,通过脚本控制红条长度的缩放或位移实现动画效果

okay,为了省事,我选择了通过scrollbar的方式实现

Unity血条实现_第1张图片

首先,我创建了这样一个scrollbar,将他的背景透明度设为0

然后我们来看下scrollbar的结构:


第一个是它的框,这里可以放些图片当背景;第二个顾名思义是滑块的滑动范围;第三个是滑块,同样可以插入图片;

okay,现在,我们为它插入必要的图片,然后将scrollbar的value调至0,将Diretcion调至1,调整将滑动范围(Sliding Area),然后将红条,也就是Handle调整至和滑动范围一样大,最终效果如下:


此时调整Direction的值你会发现我们想要的基本效果出来了(值为0时):


此时觉得还缺点什么,对,就是红条超出滑动范围的部分我们不想让它显示,这很简单,在Sliding Area下创建一个和它等大小的panel,将它的透明度设为1(记住一定是1),然后将Handel拖到panel下,于是Scrollbar的结构变成这样:


最后,为panel添加一个遮罩(Mask),我们想要的血条效果就出来了:


在脚本里,我们只需要控制scrollbar的Diretcion值就行了(范围为0-1)

你可能感兴趣的:(Unity开发)