facebook twitter hatena line email

Unity/Csharp/DoTween

提供: 初心者エンジニアの簡易メモ
2021年8月2日 (月) 23:47時点におけるAdmin (トーク | 投稿記録)による版 (ローカル座標)

移動: 案内検索

dotweenとは

アニメーションライブラリ

参考:https://qiita.com/broken55/items/df152c061da759ad1471

インストール

  1. unityassetsからdotweenを検索して、
  2. dotweenのfree ( https://assetstore.unity.com/packages/tools/animation/dotween-hotween-v2-27676 ) をダウンロード
  3. installし、
  4. importする
  5. OpenDoTweenUtilityPanelを開き
  6. SetupDotweenボタンを押して、Applyを押す。

サンプル

x=2、y=3のrootから見た座標に1秒後に移動する。

using DG.Tweening;
using UnityEngine;
public class SampleScene : MonoBehaviour
{
    void Start()
    {
        GameObject.Find("Image").transform.DOMove(new Vector3(2f, 3f, 0f), 1f);
    }
}

繰り返し

無限繰り返し

GameObject.Find("Image").transform.DOMove(new Vector3(2f, 3f, 0f), 1f);
.SetLoops(-1, LoopType.Restart);

2回指定

GameObject.Find("Image").transform.DOMove(new Vector3(2f, 3f, 0f), 1f);
.SetLoops(2, LoopType.Restart);

遅延動作

5秒待ってから動作

.SetDelay(5f);

Easeの動き

.SetEase(Ease.Linear); // 線形
.SetEase(Ease.OutSine); // 最初速く後ゆっくり
.SetEase(Ease.InExpo); // 最初ゆっくり後速く

https://github.com/Nightonke/WoWoViewPager/blob/master/Pictures/ease.png

動きを止める

オブジェクト指定

DOTween.Kill(this.transform);

tweenインスタンスを作って止める

Tween tween = GameObject.Find("Image").transform.DOMove(new Vector3(2f, 3f, 0f), 1f);
tween.Kill();

参考:https://qiita.com/broken55/items/df152c061da759ad1471

ローカル座標

DOLocalMoveとする

GameObject.Find("Image").transform.DOLocalMove(new Vector3(2f, 3f, 0f), 1f);

回転

5秒で、90度回転

.DORotate(Vector3.up * 90f, 5f)

色変更

Image image = GameObject.Find("Image").GetComponent<Image>();
image.DOColor(Color.red, 1f);