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

10歩動かす ScratchからUnityへ
10歩動かす

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

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

インストール

はじめて Unity に触る方もいると思いますので、Unity のインストールから行きます。
すでに、インストールしている方は飛ばしてください。

↓こちらのサイトから、Unity Hub をダウンロードしてインストールします。

ダウンロード
今すぐ Unity をダウンロードし、2D および 3D のマルチプラットフォームの体験やゲームを制作するための、世界で最も人気のある開発プラットフォームの使用を開始しましょう。

Unity は複数バージョンインストールできます。
その Unity のバージョンを管理するのが Unity Hub になります。

Unity Hub をインストールして、起動したら、左側のメニューから「インストール」をクリックします。
「LTS」と書かれたUnity最新版をインストールするのがオススメです。
2023年6月時点では、Unty 2022.3.3f1 LTS が最新の LTS になります。

右上の「エディターをインストール」をクリックします。

エディターをインストール
エディターをインストール

最新 LTS をインストール。ここでは、2022.3.3f1 を選択しました。

Unity のインストール
Unity のインストール

「モジュールを加える」では、「Microsoft Visual Studio Community 2022」と「言語パック(プレビュー)」の「日本語」を選択しました。後から追加することも可能です。
「インストール」ボタンを押して、しばらくするとインストール完了です。

プロジェクトの作成

Scratch が2Dなので、2Dのプロジェクトを作成します。
Unity Hub の「プロジェクト」から「新しいプロジェクト」をクリックします。

新しいプロジェクト
新しいプロジェクト

「2D(URP)」を選択します。
「プロジェクト名」と「保存場所」を決めます。
「プロジェクトを作成」をクリックして、しばらく待つとプロジェクトが作成されます。

2Dプロジェクトの作成
2Dプロジェクトの作成

10歩動かす

Scratch の「10歩動かす」ブロックを Unity で作ってみましょう。

10歩動かす
10歩動かす

三角形の配置

三角形を配置します。
Hierarchyビューを右クリックして、「2D Object」→「Sprites」→「Triangle」を選択します。

三角形の配置
三角形の配置

MoveTriangleコンポーネントの追加

Triangleにコンポーネント(機能)を追加します。
コンポーネントはC#プログラムになっています。
Hierarchyビューの Triangle を選択して、Inspectorビューの「Add Component」ボタンをクリックします。
コンポーネントの名前は自由に付けられます(今回は MoveTriangle にします)。

コンポーネントの追加
コンポーネントの追加

Inspectorビューの MoveTriangleコンポーネントの Script をダブルクリックするか、あるいは、Projectビューの MoveTriangle をダブルクリックすると、Visual Studio が起動して C#スクリプトを編集できるようになります。

Rigidbody2Dコンポーネントの追加

Triangle を動かすために Rigidbody2Dコンポーネントを追加します。
Rigidbody2Dコンポーネントは、ゲームオブジェクトを物理的な挙動で動かせるようになる機能を持っています。

Rigidbody2Dの追加
Rigidbody2Dの追加

10歩動かすプログラムを書く

それでは、さきほどの MoveTriangleコンポーネントに C#プログラムを記述して、10歩動かしてみましょう。
Start()メソッドに4行追加しました。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class MoveTriangle : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        Rigidbody2D rRigidbody2D = GetComponent<Rigidbody2D>();
        if (rRigidbody2D != null) {
            rRigidbody2D.MovePosition(new Vector2(10f, 0f));
        }
    }

    // Update is called once per frame
    void Update()
    {
        
    }
}

動かしてみる

最初はプログラムの意味が分からなくても大丈夫です。
とりあえず、動かしてみましょう。
保存しないと反映されないので、プログラムを編集したら忘れずに保存しましょう。
Unity 上部の真ん中にある再生ボタンを押すと動き出します。

再生ボタン
再生ボタン

三角形が右に10動いた状態で開始します。
Rigidbody2Dコンポーネントで重力の影響を受けるようになっていますので、三角形が下に落ちていきます。

まとめ

Scratch の「10歩動かす」ブロックと同じ動きを Unityで作ってみました。
Triangle(ゲームオブジェクト)に Rigidbody2Dコンポーネントを追加して、ゲームオブジェクトを動かす機能を付けました。
MoveTriangleコンポーネントを新しく作成し、10歩動かすプログラムを追加してみました。

Unity が提供しているコンポーネントの機能を覚えて、C#プログラムで動かせるようになると、いろいろなゲームなどを作れるようになります。

コメント

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