Developer

【初心者Unity】5分で考えたゲームを作る~ブロックシューター②~
2021.09.30
Lv1

【初心者Unity】5分で考えたゲームを作る~ブロックシューター②~

5分で考えたゲームを作る~ブロックシューター②~

こんな感じのシンプルなゲームを作ってみるの第2回です。
今回はCubeをはじくギミック(フリッパー)と、左右に操作できるスライダーを作成していきます。

前回の記事はこちら↓
5分で考えたゲームを作る~ブロックシューター①~

このゲーム製作を通じて、学べるUnityの技術の一例
・ゲームオブジェクトの自動生成
・アニメーションの作成
・物理マテリアルの使い方
・キー入力の取得
・UI(Textの使い方)
・接触判定の取り方

■フリッパーの作成

落ちてきたCubeをはじくフリッパーを作成します。
Hierarchyにて、右クリック → 3DObject → Cube を選択。名前は「Flipper 」とします。
・下図を参考にTransformの値を変更しましょう。
・Animatorコンポーネントを追加しましょう。

次に、Animationウィンドウを開きます。
「Flipper」オブジェクトが選択されている状態で、下図のCreateボタンを押しましょう。
アニメーションクリップが作成されるので、名前を「Flipper」としましょう。

参考:【初心者Unity】アニメーションの基礎

作成されたアニメーションクリップにプロパティを追加します。
Add Property → Transform → Rotation を選択して、回転のプロパティを追加します。

フレームにキーを追加します。(何秒の時点でどんな角度かを指定する)
・0:00のRotation.z を-10にします。

・0:40のRotation.z を-50にします。

・0:60のRotation.z を再び-10にします。

アニメーションクリップが作成できたらシーンを再生してみましょう。
フリッパーが周期的にアニメーションしていればOKです。
動きがぎこちなかったり、つなぎ目に違和感がある場合は各フレームのキーの値に間違いがないか確認してください。

■スライダーの作成

Cubeを右側まで運ぶためのスライダーを作成します。
Hierarchyにて、右クリック → 3DObject → Cube を選択。名前は「Slider」とします。
・下図を参考にTransformの値を変更しましょう。

■スライダー操作用のスクリプトを作成

Projectビューにて、右クリック → Create → C# Script を選択し、名前は「SliderController」とします。
作成したら以下を記述してみましょう。(コメントは書かなくてもOK)

using UnityEngine;

public class SliderController : MonoBehaviour {
	
	int speed = 20;

	void Update() {
		// 水平方向の入力値(-1 ~ 1)
		float x = Input.GetAxis("Horizontal");

		// スライダーのX座標を更新
		transform.position += new Vector3(speed * x, 0, 0) * Time.deltaTime;
	}
}

記述できたら先ほど作成したSliderオブジェクトにアタッチしましょう。

参考:【初心者Unity】矢印キーを使ってオブジェクトを操作しよう!(GetAxis)

■動作確認

ここまで作成したものを動作確認してみましょう。
落ちてきたCubeをスライダーで反発できたらOKです。

5分で考えたゲームを作る~ブロックシューター③~ に続く

連載目次リンク

「初心者のための」Unityゲーム制作 目次

Unity実践編 - 目次リンク

実践Unityゲームプログラミング 連載目次