【Unity入門】初心者用チュートリアル攻略【アイテムからUI設定まで】


前回記事からUnity入門として簡単な3Dゲームを作成してきました。

また、作成するゲームはUnity公式のチュートリアルを参考に「玉転がしゲーム」を作成します。Unityチュートリアルの内容をできるだけ簡潔にかつ分かりやすく解説します。

本記事ではプレイヤーが回収するアイテムの設置からゲーム要素を追加するためのUI設定までを解説します。

アイテムの設置

アイテムの設置をします。

今回のアイテムはプレイヤーと接触したら消える仕組みにします。よりゲーム開発らしいフェーズに入ります。

オブジェクトの作成方法

アイテムオブジェクトを作成します。

アイテムオブジェクト設置

以上のように、ヒエラルキービューの作成から3Dオブジェクト、カプセルを選択してください。

Item

赤枠の名前を「Item」に変更してください。

また、位置とサイズは以下のように設定してください。

  • 位置(x:0,y:1,z:0)
  • 拡大/縮小(x:0.5,y:0.5,z:0.5)

これにより、オブジェクトが少し宙に浮いた状態でステージ上に存在します。

アイテムの複製

次に先ほど作成したアイテムオブジェクトを複製します。

ここでは単純に複製するだけではなく、オブジェクトの情報をプレハブとして書き出すことで量産を可能にする方法を取ります。

まずはじめにファイルを整理するためのフォルダを作成します。

先ほど作成したScriptフォルダと同様の操作で、「Prefab」(プレハブ)フォルダを作成してください。

ここからアイテムオブジェクトをPrefabに書き出します。この操作はとても簡単です。

プレハブ作成

以上のように、ヒエラルキービューのItemをプロジェクトビューのPrefabにドラッグ&ペーストすれば、プレハブの作成ができます。

ここからアイテムを複製していきます。この操作も非常に簡単です。

アイテム複製

以上のように、プロジェクトビューのPrefabを開いて、Itemをヒエラルキービューにドラッグ&ペーストすれば複製可能です。今回、アイテムは4つ設置します。それぞれの名前を、「Item1~4」としてください。

 

複製したアイテムの位置がすべて真ん中に設置されているのでそれぞれの位置を移動します。

ヒエラルキービューのItem1~4を選択してそれぞれの位置のx,zの値を調整してステージ上にバランスよく配置してください。y座標の値は高さですので、変更してしまうと高さが変わてしまうので注意してください。

プレイヤーとの接触判定

次にプレイヤーとの接触判定を追加します。この機能は自分で作成しなければなりません。そのため前回記事でご紹介したScriptを作成して、アイテムの機能を追加します。

アイテムスクリプト

以上のように、プロジェクトビューのPrefab、Itemを選択して、インスペクタービューのコンポーネントを追加を選択します。コンポーネントはNewScriptで、名前を「Item」としてください。

トリガー

また、赤枠の「トリガーにする」にチェックを入れてください。

次に、先ほど作成したItemスクリプトをVisualStudio等のテキストエディタで開きます。

プログラムを以下のように編集して保存してください。(コピー&ペーストしていただいて構いません)

また、作成したスクリプトはScriptフォルダに移動して整理しておきましょう。

 

以上のプログラムにある通り、プレイヤーにPlayerタグを設定しなければなりません。この操作は非常に簡単です。

Playerタグ

以上のように、ヒエラルキービューからPlayerを選択して、インスペクタービューのタグを変更します。

これでプレイヤーとアイテムが接触するとアイテムが消えるようになります。では実際に試してみましょう。

接触確認

以上のように、接触するとアイテムが消えることが確認出来ました。

最後にヒエラルキービューで空のオブジェクトを作成して名前を「Item」とします。4つのアイテムオブジェクトを作成した空のオブジェクトにドラッグ&ペーストして、アイテムを整理して完了です。

ゲームUIの設定

次にゲームのUI(ユーザーインターフェース)部分の設定をします。

ここでは残りのアイテム数を画面に表示する方法をご紹介します。

テキストの表示方法

まずテキストを画面上に表示するキャンバスを作成します。

キャンバス設定

以上のように、ヒエラルキービューの作成から、UI、キャンバスを選択してください。

続けて、作成したCanvasを選択したまま、スケーラの設定をします。

以上のように、インスペクタービューのキャンバススケーラ、UIスケールモードを「画面サイズに拡大」に変更してください。

次にテキストの作成をします。

テキスト作成

以上のように、ヒエラルキービューの作成から、UI、テキストを選択します。これにより、自動的にテキストがキャンバスの子オブジェクトとして作成されます。名前を「ScoreLabel」としてください。

続けて、テキストを選択したまま、テキストの編集、位置の設定をします。

テキスト位置

赤枠の位置および幅と高さを変更してください。値は以下の値にしてください。

  • 位置(x:-230,y:-230,z:0)
  • Width:300 Height:100

続けてテキストのサイズの編集をします。

テキストサイズ

赤枠のテキストとフォントサイズを変更してください。値は以下の値にしてください。

  • テキスト:0
  • フォントサイズ:60

次にゲームコントローラーを作成します。これは、残りアイテム数をScoreLabelと連携させる役割があります。

ヒエラルキービューの作成から、空のオブジェクトを作成し、名前を「GameController」としてください。

続けてGameControllerを選択したまま、タグを変更します。

ゲームコントローラタグ

以上のように、インスペクタービューのタグ、GameControllerを選択します。

残りアイテム数とテキストの連携

次に残り残りアイテム数とテキストを連携させます。

まず、アイテムオブジェクトのタグをItemに変更します。

タグ レイヤー

以上のように、メニューバーの編集から、プロジェクト設定、タグとレイヤーを選択します。

続けて、Itemタグを作成します。

アイテムタグ設定

以上のように、インスペクタービューのTagsからItemを作成してください。

これでItemタグがタグ選択一覧から選択できるようになりました。

次にItemにItemタグを設定します。今回はヒエラルキービューのアイテムを変更させて、全体のアイテムに適応させる方法をご紹介します。

まず、ヒエラルキービューのItem1を選択してください。

アイテムタグ適応

以上のように、インスペクタービューのタグをItemに変更します。次に、Applyを選択することで、すべてのItemがItemタグに変更されます。この操作は様々な場面で使用されますので覚えておくと便利です。

アイテムカウント機能の追加

アイテムをカウントする機能を作成します。

ヒエラルキービューのGameControllerを選択してください。インスペクタービュー下部の「コンポーネントを追加」から、NewScriptを追加してください。名前を「GameController」としてください。

VisualStudio等のテキストエディタでGameControllerスクリプトを開いて、以下のプログラムに変更してください。

 

最後にGameControllerとScoreLabelを連携して完了です。この操作は非常に簡単です。

スコアラベル連携

以上のように、ヒエラルキービューのGameControllerを選択した状態で、ScoreLabelをインスペクタービューのScoreLabelにドラッグ&ペーストすることで連携が完了します。

では、実際に残りアイテム数が表示されるか試してみましょう。

残りアイテム確認

以上のように、残りアイテム数が左下に表示されれば問題ありません。

これで3D玉転がしゲームのベースは完成です!

まとめ

Unity入門として3Dゲーム開発をしてきました。

今回はアイテムの設置とUIの設定をしました。ここまでくるとUnityの基本的な動作がマスターできているのではないでしょうか。現段階でできることは多くないかもしれません。

しかし、入門としてしっかり基本を学んでおくことで、応用的な技術をすんなり覚えることが可能になります。この調子でUnityエンジニアとしての第一歩を踏み出しましょう。

前記事:プレイヤー作成からカメラ設定

元記事:【Unityチュートリアル完全攻略】初心者向け3Dゲームの作成


Furui