Unity | Slider 环形血条效果制作

创建 Slider

创建 slider

设置 canvasRender mdoeworld space / 或者为 not important

Unity | Slider 环形血条效果制作_第1张图片

删除 handle slider area

Unity | Slider 环形血条效果制作_第2张图片

这时候,如果修改 Slidervalue,你会发现有进度条的效果出现


环形效果

设置 backgroundfill

  • source img 加载环形 sprite
    (导入图片时,需要修改导入图片的属性,转为 sprite,再点击 Apply,这样才能够使用)
Unity | Slider 环形血条效果制作_第3张图片

修改 slider 的 Rect 组件

设置 sliderwidth height

canvas 下的所有对象(包括子对象)的锚点都设置为 stretch
在锚点设置中,按住 Alt 点击最右下角的预置方式即可

Unity | Slider 环形血条效果制作_第4张图片

修改后的效果,已经有环形血条的效果了

Unity | Slider 环形血条效果制作_第5张图片


设置颜色

设置颜色

background 设置红色的背景色

Unity | Slider 环形血条效果制作_第6张图片

fill 设置填充的前景色,设置为绿色

Unity | Slider 环形血条效果制作_第7张图片

可以加上一点透明度,看起来更舒适


但是这时候如果调整 SliderValue 值,你会发现血条并不是以预期的状态填充


修改图片类型

image type 改为 filledFill Method 设置为 Radial 360,调整 fill amount 查看效果
Fill Origin 控制初始的填充点位置,Clockwise 调整填充的方向,其他效果可以自行探索)

Unity | Slider 环形血条效果制作_第8张图片


挂载到物体上

Hierarchy 视图中,将 canvas 拖动到角色 cube 下,设置位置坐标都为 0
修改 Y 坐标,调整垂直方向的位置

Unity | Slider 环形血条效果制作_第9张图片

脚本交互

SliderMax ValueMin Value 控制血条的前景长度
在脚本中,只需要获取 Slider 后,修改 Slider.value 属性即可

Unity | Slider 环形血条效果制作_第10张图片

小结

  • 环形血条由于是在整个3D空间范围内存在的,非 2D,所以需要使用 World Space 这种 3D 分布方式

  • 画布 Canvas

    • 画布 Canvas 相当于需要显示血条对象的一个附属组件(*****任何 UI 对象在离开 Canvas 后都无法独立存活)
    • 将画布的所有子对象的锚点设置在四个最外的边界,保证修改 Canvas 的大小时,其子对象也会随之一起变化
  • 制作的血条形状与 backgroundfill 对象的 image 组件的 source image 属性有着密切的关系,血条的形状取决于它

  • fill 的图片类型决定了血条的填充效果

你可能感兴趣的:(Unity,unity)