Unity使用DOTween实现分段进度条

文章目录

  • 需求
  • 下载安装 DOTween
  • 实现
  • 实现效果

需求

用组件进度条(Slider),利用分段加载进行以假乱真的进度效果,比如说2秒钟到达20%的进度,10秒钟加载20%到50%进度,1分钟加载50%到90%的进度,30秒钟加载90%到100%的进度。在加载过程中,如果加载完成了,则直接把进度条拉到100%。

贴上 DOTween官方网站 以供学习,但是感觉实例讲得不是很清楚,利用 Sequence 自己操作了一下终于实现了,贴上来给大家参考。

可以看到官方对于Slider的动画只有一个函数 DOValue(to, duration, snapping)
在这里插入图片描述
to是要到达的值,duration是到达这个值所用的时间

下载安装 DOTween

在asset store中添加免费版的 dotween 到 My Asset后,download 并 import

在这里插入图片描述

弹出配置面板。如果关闭,也可以在“Tools / Demigiant”菜单中打开DOTween 工具面板,然后从出现的面板中选择“Setup DOTween …”完成初始化配置
在这里插入图片描述

实现

绑定脚本,Slider设置:
在这里插入图片描述
在这里插入图片描述

实现代码如下:

using UnityEngine;
using DG.Tweening;
using UnityEngine.UI;public class LoadingBar : MonoBehaviour
{public Slider loadingSlider;private Sequence seq;void Start(){loadingSlider.value = 0;seq = DOTween.Sequence();seq.Append(loadingSlider.DOValue(0.2f, 2f).SetEase(Ease.Linear));seq.Append(loadingSlider.DOValue(0.5f, 10f).SetEase(Ease.Linear));seq.Append(loadingSlider.DOValue(0.9f, 60f).SetEase(Ease.OutCubic));seq.Append(loadingSlider.DOValue(1f, 30f).SetEase(Ease.Linear));}void Update(){if (Input.GetKey(KeyCode.E)){LoadingComplete();}}private void LoadingComplete(){seq.Complete();}
}

实现效果

让它自动加载完:
在这里插入图片描述

按下E键提前结束加载:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/216776.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python 自动化用处太大了!|python自动整理文件,一键完成!

随着时代的发展及人工智能的到来,Python 自动化办公能力几乎已成为每个岗位的必备技能! 而且到处可见的抖音、朋友圈铺天盖地宣传 Python 可以轻松达到办公自动化,并且学习没门槛,是真的吗? 我很负责的告诉大家&#…

【微服务专题】SpringBoot自动配置源码解析

目录 前言阅读对象阅读导航前置知识什么是自动配置0.1 基本概念0.2 SpringBoot中的【约定大于配置】0.3 从SpringMVC看【约定大于配置】0.4 从Redis看【约定大于配置】0.5 小结 笔记正文一、EnableAutoConfiguration源码解析二、SpringBoot常用条件注解源码解析2.1 自定义条件注…

物流公司打印用什么软件,佳易王物流运单打印管理系统软件下载

物流公司打印用什么软件,佳易王物流运单打印管理系统软件下载 软件特色: 1、功能实用,操作简单,不会电脑也会操作,软件免安装,已内置数据库。 2、物流开单打印,可以打印两联单或三联单&#x…

【Unity实战】切换场景加载进度和如何在后台异步加载具有庞大世界的游戏场景,实现无缝衔接(附项目源码)

文章目录 最终效果前言一、绘制不同的场景二、切换场景加载进度1. 简单实现2. 优化 三、角色移动和跳跃控制四、添加虚拟摄像机五、触发器动态加载场景六、最终效果参考源码完结 最终效果 前言 观看本文后,我的希望你对unity场景管理有更好的理解,并且能…

力控软件与多台PLC之间ModbusTCP/IP无线通信

Modbus TCP/IP 是对成熟的 Modbus 协议的改编, 因其开放性、简单性和广泛接受性而在工业自动化系统中发挥着举足轻重的作用。它作为连接各种工业设备的通用通信协议,包括可编程逻辑控制器 (PLC)、远程终端单元 (RTU) 和传感器。它提供标准化的 TCP 接口&…

仿 美团 / 饿了么,店铺详情页功能

前言 UI有所不同,但功能差不多,商品添加购物车功能 正在写,写完会提交仓库。 效果图一:左右RecyclerView 联动 效果图二:通过点击 向上偏移至最大值 效果图三:通过点击 或 拖动 展开收缩公告(可…

mysql 变量和配置详解

MySQL 中还有一些特殊的全局变量,如 log_bin、tmpdir、version、datadir,在 MySQL 服务实例运行期间它们的值不能动态修改,也就是不能使用 SET 命令进行重新设置,这种变量称为静态变量。数据库管理员可以使用前面提到的修改源代码…

【Ambari】HDFS基于Ambari的常规运维

🦄 个人主页——🎐开着拖拉机回家_大数据运维-CSDN博客 🎐✨🍁 🪁🍁🪁🍁🪁🍁🪁🍁 🪁🍁🪁&#x1f…

BART - 磁共振重建库 linux系统安装 MATLAB 使用

本文主要介绍如何在linux系统中安装伯克利大学的磁共振重建库BART 和在matlab中的配置使用。 安装必要的库 (linux 命令行) $ sudo apt-get install make gcc libfftw3-dev liblapacke-dev libpng-dev libopenblas-dev 下载编译BART 文件 (官网链接:BART Toolbox) 命令行下…

京东数据采集接口推荐(京东大数据分析工具)

随着京东电商平台的不断发展,平台中店铺数量也越来越多,对于电商卖家而言,在电商运营过程中如何做好数据分析也越来越重要。而电商运营数据往往多而杂,想要高效的完成电商数据分析,品牌需要借助一些电商数据分析软件。…

RPC和HTTP的区别

目录 1、RPC是什么 1.1 概念 1.2 RPC的组成部分 1.3 常见的 RPC 技术和框架 1.4 RPC的工作流程 2、HTTP是什么 2.1 概念 2.2 HTTP的消息格式 2.3 HTTP响应状态码有哪些 3、⭐RPC和HTTP的区别 小结 1、RPC是什么 1.1 概念 RPC(Remote Procedure Call&am…

002、ArkTS

之——开发语言 杂谈 基础编程语言ArkTS。引用来自华为开发者课堂。 ArkTS是HarmonyOS优选的主力应用开发语言。它在TypeScript(简称TS)的基础上,匹配ArkUI框架,扩展了声明式UI、状态管理等相应的能力,让开发者以更简洁…