Unity实现UI渐隐渐显效果
程序员文章站
2023-09-06 17:31:56
本文实例为大家分享了unity实现ui渐隐渐显效果的具体代码,供大家参考,具体内容如下1、在ui对象上添加组件:canvasgroup;2、在对象上添加脚本:ui_fadeinfadeout 脚本;脚...
本文实例为大家分享了unity实现ui渐隐渐显效果的具体代码,供大家参考,具体内容如下
1、在ui对象上添加组件:canvasgroup;
2、在对象上添加脚本:ui_fadeinfadeout 脚本;
脚本信息:
(blocks raycasts=true可以交互;blocks raycasts=false无法交互)
using system.collections; using system.collections.generic; using unityengine; /// <summary> /// ui的渐入渐出 /// </summary> public class ui_fadeinfadeout : monobehaviour { private float ui_alpha = 1; //初始化时让ui显示 public float alphaspeed = 2f; //渐隐渐显的速度 private canvasgroup canvasgroup; // use this for initialization void start () { canvasgroup = this.getcomponent<canvasgroup>(); } // update is called once per frame void update () { if (canvasgroup == null) { return; } if (ui_alpha != canvasgroup.alpha) { canvasgroup.alpha = mathf.lerp(canvasgroup.alpha, ui_alpha, alphaspeed * time.deltatime); if (mathf.abs(ui_alpha - canvasgroup.alpha) <= 0.01f) { canvasgroup.alpha = ui_alpha; } } } public void ui_fadein_event() { ui_alpha = 1; canvasgroup.blocksraycasts = true; //可以和该对象交互 } public void ui_fadeout_event() { ui_alpha = 0; canvasgroup.blocksraycasts = false; //不可以和该对象交互 } }
3、需要显示时,添加 ui_fadein_event() 事件;
4、需要隐藏时,添加 ui_fadeout_event() 事件;
5、注意:父物体隐藏和显示时,子物体同样也隐藏和显示。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
上一篇: NodeJS自定义模块写法(详解)