Scratch のブロックを Unity で再現するときに、どのような方法があるのかを紹介していきます。
ScratchのブロックをUnityで再現しよう
1秒でどこかの場所へ行く
Scratch の「1秒でどこかの場所へ行く」ブロックを Unity で作ってみましょう。
![1秒でどこかの場所へ行く](https://www.papacoder.net/wp-content/uploads/2023/07/unity_20230708_01.png)
準備
「動き②」と同様に三角形を配置してMoveTriangleスクリプトを用意します。
DOTweenをインポートする
今回のように時間をかけて移動するときは、DOTweenを使うと簡単に作れます。
Asset Store から DOTween をインストールします。
![](https://papacoder.net/wp-content/uploads/cocoon-resources/blog-card-cache/f68492c4e69f84c80ddc4a0d8c9f5c5b.png)
Asset Store からダウンロードして「Unityで開く」をクリックします。
![Asset Store](https://www.papacoder.net/wp-content/uploads/2023/07/unity_20230708_03-800x357.png)
Package Manager に追加された DOTween を選択して「Import」をクリックします。
![Package Manager](https://www.papacoder.net/wp-content/uploads/2023/07/unity_20230708_04-800x559.png)
アセットの中身を確認して「Import」をクリックします。
![Import](https://www.papacoder.net/wp-content/uploads/2023/07/unity_20230708_05.png)
「Open DOTween Utility Panel」をクリックして DOTween Utility Panel を開きます。
![Setup DOTween](https://www.papacoder.net/wp-content/uploads/2023/07/unity_20230708_06.png)
「Setup DOTween」をクリックして、「Apply」をクリックします。
これで DOTween が使えるようになりました。
![DOTween Utility Panel](https://www.papacoder.net/wp-content/uploads/2023/07/unity_20230708_07.png)
どこかの場所へ行く
それでは、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モデルなどもありますので、面白そうなものを探して使ってみましょう。
![](https://papacoder.net/wp-content/uploads/cocoon-resources/blog-card-cache/5d25d53d2eda14ec4b7f62ad3e2f71e0.png)
まとめ
Scratch の「1秒でどこかの場所へ行く」ブロックと同じ動きを Unityで作ってみました。
DOTween は、オブジェクトをアニメーションさせるのに便利な機能が用意されています。
DOTween のドキュメントを見て、他にどのような機能があるのか調べてみてもいいですね。
Unity に機能を追加して、さらに面白いゲームを作れるようになりましょう。
コメント