Unity Unity Learn

Roll-a-Ball5(Collecting, Scoring and Building the Game)~Unity~

投稿日:2020年1月22日 更新日:

Creating Collectable Objects

プレイヤーが獲得するアイテムを作成します。
まずは、「GameObject」-「3DObject」-「Cube」で立方体を作成します。
名前を「PickUp」とする。
Transformについては、Potiosion(0,0.5,0)、Rotation(45,45,45)、Scale(0.5,0.5,0.5)とする。
また、「Add Compornent」から新たにスクリプトを作成します。
名前は、「Rotator」とします。
「Rotator」スクリプトを「Project」-「Script」フォルダの配下に置きます。
次に、作成したアイテムを目立たせるために回転させます。
「Rotator」スクリプトを開きます。

アイテムを回転させるスクリプトを作成します。
プレイ中にずっとアイテムを回転させるため、Update()の中に記述します。
以下が記述したコードです。

これで、アイテムが回転するようになりました。
実際に再生ボタンを押して、実行してみてください。

では、アイテムが回転することを確認できたなら次へいきます。
次は、この作成したアイテムを量産します。
まずは、「Project」の配下に「Prefabs」フォルダを新規に作成します。
作成した「Prefabs」フォルダの配下に先ほど作成した「PickUp」をドラッグして入れます。

次に、「GameObject」-「CreateEmpty」で新規に「PickUps」を作成します。
新規に作成した「PickUps」の配下に「PickUp」をいれます。
これで、量産する準備が完了です。

まずは、視点を真上から見るように変更し、空間を「Local」から「Global」に変更します。
これで、アイテムをコピーして配置します。(「Edit」-「Duplicate」もしくは、「Ctrl+d」でコピーできます。)

これで、配置ができました。
アイテムが白だと壁と同じ色のため、色を変更します。
「Project」-「Create」から「Material」で新規に「PickUp」の名前で作成します。
作成したマテリアルの色を黄色に設定します。

その後、作成した「PickUp」マテリアルを「Prefabs」配下の「PickUp」にドラッグで適応させます。
これで、全部のアイテムの色が変化しました。

Collecting the Pick Up Objects

プレイヤーがアイテムに衝突した際に、アイテムを取得できるようにします。
まずは、プレイヤーのスクリプト「PlayerController」を開きます。
今回は、プレイヤーがアイテムを通り抜けてたら、取得します。そのため、通り抜けたら、実行するOnTriggerEnter()の中に記述します。
中身は、通り抜けたものが「PickUp」タグのものであれば非表示にするというものです。

次に、アイテムにタグを作ります。
「Tag」-「Add Tag」で新たにタグを作成します。
「List is empty」と記述されているところに、先ほど設定したタグと同名の「PickUp」を記述します。

新たにタグを作成したので、「Tag」の中から作成した「PickUp」タグを選択して、設定します。
また、「Box Collider」の「Is Trigger」にチェックを入れます。

次に、「Add Component」-「Physics」-「Rigidbody」を選択して、追加します。
追加した「Rigidbody」-「Use Gravity」のチェックを外します。

これで、設定が終わりました。
再生ボタンを押して、実行してみてください。
プレイヤーを動かして、アイテムを取得することができます。

Displaying the Score and Text

取得したアイテムを数える機能とゲームを終わらせる機能を作成します。
まず、取得したアイテムを数える機能を作成します。
「GameObject」-「UI」-「Text」を新規に作成します。
名前を「CountText」とします。

こちらが、Canvasの設定です。
※このの設定で、私は詰まりました。
 ここで、詰まった方は、
 CanvasとTextをまとめましたのでを参考にしてください。
 CanvasとTextについて

こちらが、Textの設定です。
Rect Transformでは、図を選択後、「Shift+Alt」を押して、左上を選択してください。

これで、Game画面の左上に「Count Text」という文字が表示できました。
これで、再生ボタンを押して、ゲームをプレイしていてもずっと左上に文字があることがわかります。

次に、「PlayerController」スクリプトに取得した数をカウントするコードを記述します。
以下が追加で記述したコードです。

これで、アイテムの取得したカウントができます。
あとは、先ほど作成した「CountText」をドラッグで、「Player」のCount Textにドラッグで入れます。
これで、プレイするとアイテムを取得する度にカウントされます。

最後に、アイテムをすべて取得した際に「You Win」というメッセージが表示されるようにします。
「Count Text」を作成した手順でWinTextを作成して、文字の位置を真ん中にします。
「PlayerController」の中は以下の様に記述します。

最後に、作成した「Win Text」をドラッグで「Player」のWin Textの中にいれます。
これで、「Roll-a-Ball」の完成です。

Building the Game

「Roll-a-Ball」ゲームをビルドして、実行ファイルにします。
「File」-「Build Setting」を選択します。
選択すると下の画面が表示されます。
そこで、「Add Open Scenes」で作成したゲームのシーンを追加します。
追加の方法は、ドラッグで持ってくることもできます。
「Build」ボタンを押して、ビルドします。

これで、フォルダを選択して、ビルドしたファイルの保存先を選択します。
(ここでは、「Build」フォルダを新規作成して選んでいます。)

これで、ビルドができました。
先ほど保存したフォルダを開きます。
「Roll-a-Ball」を選んで、実行します。

実際に実行した画面です。
無事に実行することができました。

おわりに

今回は、Unity Learnの「Roll-a-Ball」を実施しました。
難易度は優しいですが、Unityの開発で大事な要素が多く詰まっていたと感じます。
これから、Unityに触れようと考えている方におすすめです。

-Unity, Unity Learn
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


関連記事

Unity アプリのアイコンを変更する方法

Unityでアプリを作成して、アプリを設定したい方や変更したい方に向けてアイコンの変更方法を伝えます。※アプリを作成する中で、不明点等でわからないことがでてくるとおもいます。その際は、1人で悩まずに気 …

Unity でARcoreを使いマーカーARのサンプルアプリの作り方(AugmentedImage)

Unity でARcoreを使いマーカーARのアプリを作りたい方やARについて学びたい方 このような方に向けてARCore SDK for Unityに含まれているサンプルであるAugmentedIm …

Unity Learnで学習~Unity~

Unityを学んでみたい方やUnity Learnに興味がある方 このような方に向けて、Unityを学ぶことができるUnity Learnでどのようなことが学ぶことができるかについてまとめました。 U …

CanvasとText~Unity~

はじめに 今回は、UnityのUIである「Canvas」と「Text」についてです。これらは、Unityを使っていれば必要なものなので、参考になると思います。 Canvas Canvasとは、UIの要 …

初心者におすすめのUnityの副業

初心者におすすめのUnityの副業について Unityを学び稼ぐ方法は以下の種類があります。 フリーランスアプリ開発初心者向けのチュートリアル 現状、フリーランスではリモートで働くことは難しく、駐在す …