【Unity】ScratchのブロックをUnityで再現しよう~動き③~

1秒でどこかの場所へ行く ScratchからUnityへ
1秒でどこかの場所へ行く

Scratch のブロックを Unity で再現するときに、どのような方法があるのかを紹介していきます。

ScratchのブロックをUnityで再現しよう

1秒でどこかの場所へ行く

Scratch の「1秒でどこかの場所へ行く」ブロックを Unity で作ってみましょう。

1秒でどこかの場所へ行く
1秒でどこかの場所へ行く

準備

「動き②」と同様に三角形を配置してMoveTriangleスクリプトを用意します。

DOTweenをインポートする

今回のように時間をかけて移動するときは、DOTweenを使うと簡単に作れます。
Asset Store から DOTween をインストールします。

DOTween (HOTween v2) | アニメーション ツール | Unity Asset Store
Use the DOTween (HOTween v2) tool from Demigiant on your next project. Find this & more animation tools on the Unity Ass...

Asset Store からダウンロードして「Unityで開く」をクリックします。

Asset Store
Asset Store

Package Manager に追加された DOTween を選択して「Import」をクリックします。

Package Manager
Package Manager

アセットの中身を確認して「Import」をクリックします。

Import
Import

「Open DOTween Utility Panel」をクリックして DOTween Utility Panel を開きます。

Setup DOTween
Setup DOTween

「Setup DOTween」をクリックして、「Apply」をクリックします。
これで DOTween が使えるようになりました。

DOTween Utility Panel
DOTween Utility Panel

どこかの場所へ行く

それでは、MoveTriangleコンポーネントに C#プログラムを記述して、どこかの場所へ行くようにしてみましょう。
プログラムを作成後、画面上部の再生ボタンを押すと、三角形がランダムな場所に移動します。

using UnityEngine;

public class MoveTriangle : MonoBehaviour {
    void Start() {
        transform.position = new Vector3(Random.Range(-5f, 5f), Random.Range(-3f, 3f), 0f);
    }
}

x座標を0、y座標を0にする

次は、x座標とy座標を指定して移動させましょう。
ここでは、x座標に -2、y座標に 1.5 を指定しています。

using UnityEngine;

public class MoveTriangle : MonoBehaviour {
    void Start() {
        transform.position = new Vector3(-2f, 1.5f, 0f);
    }
}

1秒でどこかの場所へ行く

次は、1秒でどこかの場所へ行くようにしましょう。
ここで DOTween を使います。

using UnityEngine;
using DG.Tweening;

public class MoveTriangle : MonoBehaviour {
    void Start() {
        transform.DOMove(new Vector3(Random.Range(-5f, 5f), Random.Range(-3f, 3f), 0f), 1f);
    }
}

1秒でx座標を0、y座標を0にする

最後に、1秒で指定した座標まで移動させましょう。
ここでは、x座標に -2、y座標に 1.5 を指定しています。

using UnityEngine;
using DG.Tweening;

public class MoveTriangle : MonoBehaviour {
    void Start() {
        transform.DOMove(new Vector3(-2f, 1.5f, 0f), 1f);
    }
}

プログラムのちょこっと解説

今回は「1秒でどこかの場所へ行く」ために、DOTween というアセットを使ってみました。
Unity にもともと用意されている機能以外にも、Asset Store などで提供されているアセットを使うと、新しい機能を使えるようになります。
Asset Store には画像や3Dモデルなどもありますので、面白そうなものを探して使ってみましょう。

Unity アセットストア - ゲーム制作のための最高のアセット
ゲーム制作のための最高のアセットを見つけましょう。Unity の誇る膨大な 2D モデル、3D モデル、SDK、テンプレート、ツールのカタログから、皆さんのゲーム開発を加速させるアセットをお選びください。

まとめ

Scratch の「1秒でどこかの場所へ行く」ブロックと同じ動きを Unityで作ってみました。
DOTween は、オブジェクトをアニメーションさせるのに便利な機能が用意されています。
DOTween のドキュメントを見て、他にどのような機能があるのか調べてみてもいいですね。

DOTween (HOTween v2)
DOTween is the evolution of HOTween, a Unity Tween Engine

Unity に機能を追加して、さらに面白いゲームを作れるようになりましょう。

コメント

タイトルとURLをコピーしました