当前位置: 首页 > news >正文

Unity:使用DoTween实现按钮的缩放

    使用DoTween实现按钮的缩放

using DG.Tweening;
using UnityEngine;

public class ButtonScale : MonoBehaviour
{
    public float scaleSize = 1.2f; // 缩放的目标大小
    public float duration = 0.3f; // 缩放的持续时间

    void Start()
    {
        // 获取按钮的Transform组件
        Transform buttonTransform = this.transform;

        // 使用DoTween实现按钮的缩放
        buttonTransform.DOScale(new Vector3(scaleSize, scaleSize, scaleSize), duration)
            .SetEase(Ease.OutBack) // 设置缓动效果
            .SetLoops(2, LoopType.Yoyo); // 来回缩放一次
    }
}

说明:

  1. scaleSize:按钮缩放的目标大小(例如 1.2f 表示放大到原始大小的 1.2 倍)。

  2. duration:缩放动画的持续时间(以秒为单位)。

  3. SetEase(Ease.OutBack):设置动画的缓动效果,OutBack 会有一个轻微的弹性效果。

  4. SetLoops(2, LoopType.Yoyo):动画循环 2 次(即放大后再缩小),LoopType.Yoyo 表示来回播放。

将脚本挂载到按钮对象上即可实现缩放效果。

如果需要点击按钮时触发缩放,可以将代码放到 OnClick 事件中。例如:

public void OnButtonClick()
{
    transform.DOScale(new Vector3(scaleSize, scaleSize, scaleSize), duration)
        .SetEase(Ease.OutBack)
        .SetLoops(2, LoopType.Yoyo);
}

然后在 Unity 的 Button 组件中绑定 OnButtonClick 方法即可。

相关文章:

  • Ubuntu 22.04 安装Nvidia驱动加速deepseek
  • 大模型RAG中的retrieve策略
  • AE 安装包 绿色版(Win,Mac)(2018-2025)合集
  • conda env remove与conda remove
  • RuoYi使用$.modal.closeTab方法关闭当前tab标签页刷新另外一个tab标签页
  • Python毕业设计选题:基于Python的社区爱心养老管理系统设计与实现_django
  • 国漫工业化革命:AI如何让“一人团队”产出影视级动画?
  • Bend Labs弯曲传感器:柔性设计,多轴测量,高精度传感
  • 时间无关和时间相关的N-S方程
  • 凸函数和凹函数的定义怎么来的?
  • openssl的aes128_ECB加密解密运算实例
  • 【精】使用 Apktool 反编译 APK 并重新签名的详细教程
  • 工具MyBatis Generator(MBG)
  • 网页聊天室测试报告
  • ubuntu下r8125网卡重启丢失修复案例一则
  • 使用 Java 更新 Word 文档中的图表数据-超详细
  • Qt 对象树详解:从原理到运用
  • 多线程之旅:锁策略
  • C++中map容器常见用法(AI)
  • 游戏引擎学习第127天
  • 摄影网站的意义/百度搜索广告
  • 荣成网站建设/搜索引擎营销的作用
  • 做网站流量的方法/柳市网站制作