Unity事例ノート

UNITY

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

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

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

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

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

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

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

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

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

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

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

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

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

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

GameOverAreaにタグをつけます。

タグ名はGameOverとしました。

GameOverタグを設定しておきましょう。

GameOverAreaを透明にする

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

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

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

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

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

透明色が出来ました。

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

GameOverAreaが透明になりました。

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

UI > テキストを作成します。

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

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

テキストの場所が決まれば、GameOverの文字は消しておきましょう。

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

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

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

CubeMove.csを書きます。

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

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

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