Unity事例ノート

UNITY

落下したらゲームオーバーになる仕組み

フィールドから落ちてしまえば、ゲームオーバーになる仕組みを作ってみましょう

Cubeを操作して、落下すればGameOverのテキストを表示させてみます。

関連記事:
Colliderを使った接触判定
OnCollisionEnterとOnTriggerEnterの違い
倒れると削除

ゲームオーバーのエリアをつくる

プレーヤーとしてCube、床として平面オブジェクトを用意し、色をつけました。

ヒエラルキーに、CubeとPlaneがある状態です。

Cubeにはリジッドボディをつけます。

続いて、床の下に、ゲームオーバーの当たり判定をつくりましょう。

平面オブジェクトをもう一つ作成します。

オブジェクト名をGameOverAreaに変えて、スケールのXとZをそれぞれ5に変更しました。

GameOverAreaのY座標を操作して、下の方に移動します。

横からみると、このようになりました。

さらにGameOverAreaにボックスコライダーを追加し、トリガーにするにチェックを入れましょう。

GameOverAreaを透明にする

GameOverAreaに透明色をつけましょう。

まずはマテリアルを作成し、Toumeiと名前をつけます。

Rendering ModeのところをFadeに変更しましょう。

アルベドから色の設定を行います。

Aのところを0にしましょう

透明色が出来ました。

これをGameOverAreaにアタッチしましょう。

GameOverAreaが透明になりました。

ゲームオーバーのテキスト

TextMeshProで、テキストを作成します。

各項目を調整しながら、テキストの位置を決めます。

このようにテキストを配置しました。

Textオブジェクトのチェックを外して、非表示にしておきます。

落下したらゲームオーバーになるスクリプト

プレーヤーの動きと、ゲームオーバーの表示については、スクリプトが必要です。

Cubeに、CubeMove.csを作成して追加しましょう。

CubeMove.csを書きます。

GameOverTextのフィールドには、テキストオブジェクトを入れましょう。

プレイして動きを確認します。

関連記事:
Colliderを使った接触判定
OnCollisionEnterとOnTriggerEnterの違い
倒れると削除

SCHOOL教室案内