DoTween实现机械运动效果

项目场景:

运用dotween实现机械循环运动
在这里插入图片描述


实现方式:

using DG.Tweening;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class MoveAni : MonoBehaviour
{
    private Transform Up;
    private List<Transform> Legs = new List<Transform>();
    private Transform Down;

    private void Awake()
    {
        Up = transform.Find("UP");
        Down = transform.Find("DOWN");
        for (int i = 0; i < transform.childCount; i++)
        {
            if (transform.GetChild(i).name.Contains("ZG"))
            {
                Legs.Add(transform.GetChild(i));
            }
        }
    }

    void Start()
    {
        //Tween tween = Test.DOMoveX(20,2f);
        //tween.SetLoops(-1, LoopType.Yoyo);

        Sequence body = DOTween.Sequence();
        body.Append(Up.DOLocalMove(new Vector3(Up.transform.localPosition.x + 0.08f, Up.transform.localPosition.y + 0.04f, 0), 0.08f));

        for (int i = 0; i < Legs.Count; i++)
        {
            body.Insert(0, Legs[i].DOLocalRotate(new Vector3(0, 0, -10), 0.08f));
        }
        body.Insert(0, Down.DOLocalMove(new Vector3(Down.transform.localPosition.x -0.02f, Down.transform.localPosition.y - 0.02f, 0), 0.08f));

        body.SetLoops(-1, LoopType.Yoyo);
    }

}


Unity模型设置:

在这里插入图片描述

Unity中,可以利用DOTween插件来创建文字打印(Text Scroll)的效果DOTween是一个强大的动画引擎,它允许你在Unity中轻松地控制游戏对象的属性变化,包括Transform组件的position、scale和rotation等,以及颜色、透明度等。 要实现文字打印机效果,你可以按照以下步骤操作: 1. 首先,安装DOTween:在Unity Asset Store搜索并下载DOTween插件,然后导入项目中。 2. 创建一个TextMeshProUGUI(或旧版的UI Text)对象作为你的文字容器。 3. 获取到Text对象的Transform引用,并将DOTween包装其transform,例如`var textTween = DOTween.Sequence().Append(transform.position)`。 4. 设置初始和目标位置,比如文字开始在屏幕外,然后逐渐滚动到屏幕上可见的位置。你可以设置一个循环动画,让文字不断滚动直到达到终点然后再返回起点。 5. 可能还需要配置动画的速度(Ease Type)、持续时间(Duration)和是否自动播放(AutoKill)等选项。 6. 调用`.Start()`方法启动动画。 示例代码: ```csharp Text myText = GetComponent<Text>(); Vector3 startPos = new Vector3(-Screen.width, 0, 0); // 开始位置 Vector3 endPos = new Vector3(Screen.width, 0, 0); // 结束位置 textTween.To(startPos, Screen.width / 10f) // 滚动速度,10秒滚动完整个屏幕宽度 .SetEase(Ease.Linear) .Pause() // 初始暂停,可根据需要调整 .OnComplete(() => textTween.Play()) // 完成后再继续下一个周期 .Start(); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值