3Dテトリスのスコアと次に落ちてくるブロックを表示する処理とUIの作成

Unity C# 落ち物ゲームの作り方


Unityの本格ゲーム制作講座はこちら
【30日間の全額返金保証付き】

前回の記事でテトリスブロックの回転処理を作りました。落下、消滅、回転処理ができてかなりゲームらしくなってきましたね。

前回の記事:

テトリスブロックの回転処理の作り方 3D空間のUnity回転に挑戦!
前回の記事ではブロックの落下処理及び落下後に一面ブロックがそろっていたら消える処理を作りました。 前回の記事: 今回の記事では落下中のブロックを回転するようにしていきます。 スクリプトの内容は難しいものになっていますが、やっていき...

今回の記事ではスコアや次に落ちてくるブロックの表示UIを作成していきます。


【Unity入門の森の最新ゲーム開発講座もお届け】

テトリススコアのUI作成

まず、スコアを追加していきます。

「TetrisSceneManager」スクリプトにスコアを記録するようにしていきます。

次のように修正してください。

GameObjectの追加

スクリプトの準備ができましたので、次はGameObjectをシーンに配置していきます。

次の手順を行ってください。

  • メニューのGameObject > UI > CanvasをクリックしGameObjectをシーンに追加
  • 追加したGameObjectの名前は「UI」にする

作成した「UI」は次のGameObject階層にしてください。

  • UI : UI > Canvas
  • – Score : 空のGameObject
  • – – Label : UI > Text
  • – – ScoreText : UI > Text

GameObject階層を作成したら、次のように設定してください。

シーンにGameObjectを配置できたら、「TetrisSceneManager」コンポーネントに次のものを設定してください。

ここまでできたら実際に再生して動作を確認してください。

ある高さのマスがブロックで埋まったらスコアに反映されるようになっていればOKです。

次に落ちてくるブロックの表示UIの作成

次に出てくるブロックが何かがわかるUIを追加していきます。

ブロックのサムネイルを作成

次のブロックを表示する際はブロックの表す画像が必要になってくるのでまずそちらを用意します。

「BlockTemplate」クラスを次のように修正してください。

修正できたら、各ブロックのサムネイルとなる画像を作成し既に作成している「BlockTemplate」アセットに設定してください。(方法はなんでもOKです。)

記事では次のものを作成しています。

Block1

Block2

Block3

Block4

Block5

もし画像をアタッチできない場合は、画像をDefaultからSpriteに変更してください。

スクリプトの作成・修正

画像の準備ができたので、次はスクリプトの方を修正していきます。

「TetrisSceneManager」スクリプトを次のように修正してください。

 

次に落ちてくるブロック表示用UIのGameObjectを追加

スクリプトの準備ができましたので、次はGameObjectをシーンに配置していきます。

次の手順を行ってください。

  • 「UI」の子GameObjectにメニューからGameObject > UI > Imageをクリックし新しいGameObjectを作成してください。
  • 作成したGameObjectの名前は「NextBlockImage」にしてください。

GameObject階層は次のようになります。

  • UI
  • …(既存のもの)
  • – NextBlockImage : UI > Image

GameObject階層を作成したら、次のように設定してください。

シーンにGameObjectを配置できたら、「TetrisSceneManager」コンポーネントに次のものを設定してください。

ここまでできたら、実際に再生してみて動作を確認してください。

ブロックを配置した後に次のブロックに表示されたものが出てくるようになると成功です。

まとめ

今回の記事ではUIを作成していきました。

テトリスでよくある簡単なものでしたがどうでしたか?

今回の次に出てくるブロックの表示法などは例えば、カードゲームで次に引くカードを表示させるなどにも応用できそうですね。

まとめると以下のようになります。

  • スコアを表示するUI画面を追加
  • 次に出てくるブロックを表示するUI画面を追加

それでは次の記事に行ってみましょう!

テトリスゲーム管理処理 スタートとゲームオーバーの作り方 スクリプト全文まとめ
前回は3Dテトリスのスコアと何のブロックが落ちてくるかのUI作成を行いました。 前回の記事: 今回の記事ではゲームの流れとなるスタート・ゲームオーバー処理を作成し、ゲームを完成させます。 開始ボタンの作成 まず、開始ボタンを押し...

【Unity入門の森の最新ゲーム開発講座もお届け】

コメント

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