はじめに
初めまして、Land-Eaterと申します。
今回はUnityの基礎について解説しようと思います。まだUnityをインストールしていない方は他記事で解説していますので、そちらで環境構築をお願いします。
さて、本記事の立ち位置について話したいと思います。
本記事ではUnityの基本となる機能や単語について、解説していこうと思います。なので、初心者向けに簡単なゲームを作るというよりは、これだけは知っておきたいという機能についてわかりやすく解説します。
ある程度単語や操作方法を予習することで他のUnityチュートリアルをスムーズに進めることができると思います。
初めのうちは本記事は辞書として使用していただき、ゆくゆくは本記事を見なくても実装できるようになっていただきたいです。
前置きが長くなってしまいましたがやっていきましょう!
目次
- 事前条件
- 今回の環境
- プロジェクトの作成
- Unityの画面説明
- プロジェクトの詳細設定
- Scene上の操作
- GameObjectとは
- Component (コンポーネント)
- Prefab
- Script
- 実行中の変更
- Scene (シーン)
- Canvas
- あとがき
事前条件
- Unity,エディタ(Rider以外でも可能)のインストールが終了している。
- Object指向を多少理解している。(継承,interfaceなど)
今回の環境
今回この記事では以下の環境で解説していきます
Mac OS
Unity 6.3 LTS (6000.3.17f1)
Rider 2026.1.3 (エディタ)
プロジェクトの作成
さて、まず一番最初にプロジェクトの作成をしていきましょう。
プロジェクトが今後作っていくゲームの一単位となります。なので新しくゲームを作るたびにプロジェクトを作成します。
Unity Hubを開き、左側のサイドバーからプロジェクトを選択。次に右上に現れる +新しいプロジェクト をクリックしてください。すると下の画像のような画面に遷移すると思います。
遷移後、今回使用するUniversal 3Dを選択し、画面右側のプロジェクトの詳細設定の部分で赤丸で囲まれているプロジェクト名を入力します。
次にその下の保存場所の確認をします。もし自分で保存したい場所がある場合はそのパスを入力してください。
最後にソース管理プロバイダーについて、**無しを選択 (None)**を選択してください。もしGit Hubアカウントを持っている場合はここで連携の設定ができます。
最初に無しの設定にしても、後からGithubに設定することができます。
全ての必須項目の入力が完了したら、右下の +プロジェクトを作成ボタンが青くなるので、クリックするとプロジェクト作成が完了します。
作成が完了したら、Unity Hubのプロジェクトタブに自身の作成したプロジェクトが表示されるのでクリックしてプロジェクトを開いてください。
Unityの画面説明
さて、無事プロジェクトが開けたら次は画面の説明に移ります。下の画像をご覧ください。
主要な各機能について、ざっくりとした説明をします。
一度に覚える必要はありません、今後話で出てくるたびに覚えていなければここまで戻って確認しましょう。
-
ヒエラルキー
シーン上に存在するオブジェクトの一覧を表示します。(シーンの説明は後ほど)
-
シーンビュー
現在のシーンを表示します。シーンビューを操作するときはシーンビューをクリックして選択する必要があります。
-
ゲームビュー
シーンビュー左上のタブをクリックで切り替えることで表示できます。実際にゲームとして画面に表示される画面です。
-
インスペクター
選択しているオブジェクトやスクリプトの詳細が表示されます。
-
プロジェクトタブ
このプロジェクトに含まれているファイルの一覧が見れます。
-
コンソールタブ
プロジェクトタブ左上のタブをクリックで切り替えることができます。エラー内容や実行中のLogなどが表示されます。
この後、度々シーン(Scene)という単語が出てきますが、一旦シーンビューから見えている画面ということにしておきましょう。後々ちゃんと解説します。
さて、ではこちらの画面を改造していきましょう(!?)。私の体感ですが、デフォルトの画面は大変作業しにくいです。なので画面を変更していきます。
強制ではないので、このまま進める方は次の項目まで進めてください。変更しない場合でも作業できるようにするつもりです。
さて、変更する方法ですが、各タブの左上の部分をドラッグ&ドロップすることで自由に場所を変えることができます。参考例に私の画面は下の画像のように変更してあります。
ヒエラルキーが左下に、また、シーンビューとゲームビューを左右に配置して同時に見ることができるようになっています。
ぜひ、ご自身でタブを動かしてこの形に持っていってみてください。
今の所私はこの形が一番作業しやすいです。
ただ使いやすさは人によって違うと思いますので、一旦はこの形に変えてもらい、今後ご自身でより良い形に変えていってください。
プロジェクトの詳細設定
さて、次にプロジェクトの詳細設定を行います。今回、行うことは以下の2つです。
- エディタをRider 2026.1.3に変更
- 実行中に画面の色を変えるように設定
後者については「やる必要ある?」と思うかも知れませんが後々解説します。Unityでは実行中であることをわかりやすくすることは重要です。これに関しては絶対に設定してください。
さて、Unityの設定画面の開き方ですが、画面左上にカーソルを持っていくと出てくるツールバーから以下の手順で開けます。
- Mac:
Unity->Settings - Windows:
Edit->Preferences
以下の画像のような画面が開けたら成功です。
開けたら、右上の検索欄に「external tools」と入力してください。そうするとExternal toolsの項目が開くと思うので、その中のExternal Script Editorという項目がRider 2026.1.3になっているか確認してください。なっていない場合はクリックして変更をお願いします。もし、一覧にRiderが表示されない場合は、**Browse...**からエディタの実行ファイルを直接選択することで一覧に表示されるようになります。
さて、次は実行中の色を変えます。
先ほどと同様に、設定画面の右上の検索欄を使います。
今回は「playmode tint」と入力してください。そうすると、Colorの項目のplaymode tintがハイライトで表示されていると思うので、右側のカラーバーをクリックし、わかりやすい好きな色に設定してください。
今回私は暗いオレンジ色に設定しています。
(完璧に余談ですが、なぜこの色にしているかというとアーマード・コア3 のオープニングムービーに登場するPCのUIがこんな感じの色だったからです。かっこいいね)
実行中の色はUnityの画面中央上部にある▶︎ボタン(実行ボタン)を押すと確認できます。実行状態から抜け出すためには再度同じボタンを押します。
ここまで終わりましたら、一旦詳細設定は終了です。次から実際にUnityに触っていきましょう!
Scene上の操作
まず最初にシーン(Scene)上の操作に触れたいと思います。この操作について、実際に次の項目のGeme Objectを追加してからの方が視覚的にわかりやすと思います。
シーンの操作はシーンビューをクリックしてから行う必要があります。
以下に操作の一覧を載せます。()内はMacのトラックパッド操作です。
※Macでマウス操作する場合はAltの代わりにOptionを使うことが多いです。
並行移動:
中クリック + ドラッグ (Option + Command + 指1本ドラッグ)
自分を中心に回転:
右クリック + ドラッグ (2本指で押し込み + ドラッグ)
見ている点を中心に回転:
Alt + 左クリック + ドラッグ (Option + 指1本ドラッグ)
接近&後退:
マウスホイール もしくは Alt + 右クリック + ドラッグ (指2本で上下スライド)
選択しているObjectを中央に移動:
Fキー
他にもたくさん操作方法はあるので気になる人は調べてみてください。
GameObjectとは
GameObject(ゲームオブジェクト)とは、ゲームの世界に存在する「もの」を表すオブジェクトです。
例えばゲーム内に存在する
- プレイヤー
- 敵
- 地面
- 木
- カメラ
- ライト
- ex...
これらは全てGame Object です。実際に配置してみましょう。
Unityのヒエラルキー上で右クリック、Create->3DObject->Sphereで、シーン上に配置しましょう。成功したら、シーンビュー上にグレーの球体が表示されたかと思います。また、Cubeを選ぶことで四角形が、Planeを選べば厚さ0の板が生成されます。
またゲームオブジェクトをシーン上で選択しドラッグすることで、移動させることができます。
また以下の画像のうち、矢印をドラッグすると矢印の向き(x,y,z軸)のみに、直角を表すような四角形をドラッグするとその面(x-y,y-z,x-z面)に沿うように移動させることができます。
ただ、これ本体だけだと一切何も動きません。ただのボール(重力すら働いていない)です。
なのでコンポーネントを追加する必要があります。
Component (コンポーネント)
Componentの説明に移りましょう。
Unityではコンポーネントベース設計(Component-Based Architectureという考え方が採用されています。詳しく説明すると少し難しいので、ここでは
「GameObjectに後から必要な機能を追加するための部品」
と考えてもらえれば大丈夫です。
気になる方は「コンポーネントベース設計」について調べてみると、Unityの設計思想をより深く理解できます。
はい、では早速今回作ったsphereのコンポーネントを見てみましょう。シーンビュー上でSphereをクリックして選択してください。するとインスペクターに色々なものが表示されるはずです。
もし、インスペクターがどこだかわからない人はUnityの画面設定まで戻って確認しましょう。
インスペクターは下の画像のようになっているはずです。
※簡略化のため各Componentのタブを閉じております。

既にTransform, Sphere (Mesh Filter), Mesh Renderer, Sphere Colliderという4つのComponentがアタッチされていますね。これらはsphereにデフォルトでアタッチされているComponentです。今回はこれらに加えて基本的なコンポーネントを紹介します。
Transform
GameObjectの位置、回転、大きさを受け持つComponentです。

PositionはこのGame Objectの座標をRotationはこのGame Objectの回転(角度)をScaleはこのGame Objectのサイズを表します。
実際に値を入れてみましょう。変化が見られるはずです。
Sphere (Mesh Filter)
このGame Objectがどのような形をしているかを保持しているComponentです。今回はSphereなので球状の形です。今回は詳しく操作しません。
Mesh Renderer
Mesh Filterの持つ形を画面に表示するためのComponentです。実際にチェックマークを外してみるとシーンビューから消えると思います。
こちらもMaterial項目以外は今回は詳しく操作しません。
Collider (Sphere Collider)
Game Objectに当たり判定をつけるためのComponentです。今回はSphereなので球状の形です。選択した時に見えている緑色の線が当たり判定になります。
この中のうち、よく使うものを紹介します。
-
Edit Collider
実際の当たり判定の範囲を弄ることができます。初期値ではGame Objectぴったりに設定されていますが、実際より大きくしたり、小さくしたりできます。 -
Is Trigger
実際にぶつかったかどうかを判断するものです。OFFの状態では衝突しますが、ONにすると触れたことのみを検知してすり抜けます。こちらは後で実際に試します。 -
(Physics) Material
Colliderに摩擦や反発係数などを設定できるようにします。今の段階ではNoneですが、Physics Materialを作成してアタッチすることで設定できます。
ここからは現在のsphereにはアタッチされていないComponentを紹介します。Componentを新しくアタッチする方法と合わせて学んでしまいましょう。
インスペクターにあるAdd Componentというボタンを押してください。すると図のような検索バーが表示されるので今回は「Rigidbody」と検索してください。
画像のように、一番上に出てきたRigidbodyをクリックします。成功した場合RigidbodyがComponent一覧に追加されるはずです。
さて、Rigidbodyの説明に移る前に、Componentの消し方についても学んでしまいましょう。
Rigidbody Componentの右上にあるハンバーガーボタンを押してください。
Remove Componentを選択するとComponentを削除することができます。
さて、再びRigidbodyをアタッチする前にゲームを実行してみましょう。
画面中央上部にある▶︎ボタン(実行ボタン)を押してみてください。
おそらく球が浮いているだけで何も起こらないはずです。しかし、安心してください正常です。
次に先ほどと同様の手順でRigidbodyをアタッチしてから再び実行してみてください。
どうでしょうか?前回と違って球が下に向かって落ちていったはずです。
Rigidbody
というわけで、こちらはお察しの通り重力を受け持つComponentです。これをアタッチしないと重力は働きません。
さらに正確に言うと、重力だけでなく、物体同士の衝突や摩擦などの物理演算全般を管理してくれます。
Material
さて、先ほどMesh Rendererの説明をした際にMaterialという単語が出てきました。
MaterialとはGameObjectの見た目を設定するものです。
例えば、
- 色
- 模様
- 金属感
- 光り方
などを変更することができます。今回は色だけ変更してみましょう。
まず、ヒエラルキー上で右クリックし、Create -> 3D Object -> Planeをクリックしてください。
Planeが追加されたら、TransformのPositionを**(0, 0, 0)**に設定します。
次にMaterialを作成します。
Projectタブで右クリックし、Create -> Materialを選択してください。今回は名前をGroundMaterialにしておきましょう。
作成したMaterialを選択すると、InspectorにMaterialの設定が表示されます。
今回はBase Mapの色を好きな色に変更してみてください。
色を変更できたら、そのMaterialをPlaneへドラッグ&ドロップしましょう。ドラッグ&ドロップする場所はシーン上のGame Objectに直接貼り付けるか、選択したGame ObjectのMesh Renderer内のMaterialの部分にドロップすることで反映されます。
どうでしょうか。Planeの色が変わったと思います。
同様にSphereにもMaterialを作成し、ドラッグ&ドロップしてみてください。今回の名前はSphereMaterialにしましょう。
Sphereの色も変更されたと思います。
このように、Materialを変更することでGameObjectの見た目を変更することができます。
次に、壁を作成するためにCubeを追加しましょう。
ヒエラルキーで右クリックし、Create -> 3D Object -> Cubeをクリックしてください。
追加したCubeのTransformを以下のように設定します。
- Position : (5, 0, 0)
- Scale : (1, 1, 11)
設定が終わったら、先ほどと同様にMaterialを作成し、アタッチして好きな色を付けてみてください。今回の名前はwallMaterialとしましょう。
すると、ステージの右側に壁が1枚できたと思います。
しかし、ここで一つ問題があります。四角いステージを作るためには、あと3枚壁が必要になります。もちろん、もう一度Cubeを作って同じ設定を繰り返しても構いません。
ですが、同じ設定を何度も繰り返すのは少し面倒ですよね。
そんな時に便利なのがPrefabです。
Prefab
Prefabとは、GameObjectをテンプレートとして保存する機能です。
一度Prefabとして保存してしまえば、何度でも同じGameObjectを配置することができます。
では実際に作ってみましょう。
まず、Projectタブで右クリックし、Create -> FolderからPrefabsというフォルダをAssetの直下に作成してください。
次に、ヒエラルキーにある先ほど作成したCubeを、そのPrefabsフォルダへドラッグ&ドロップしてください。ヒエラルキー上のCubeが青色に変化したら成功です。
これでPrefabの作成は完了です。
では実際に使ってみましょう。
ProjectタブにあるPrefabをScene上へドラッグ&ドロップしてみてください。何度でも同じ壁を配置できるようになったと思います。
残り3枚も配置し、それぞれPositionやRotationを変更すると、下の画像のようなステージを作ることができます。
毎回Cubeを作成して、ScaleやMaterialを設定する必要がなくなりましたね。
Script
さて、ここまででGameObjectやComponentについて学びました。
しかし、今のままではSphereは重力で落ちるだけで、自分で動くことはできません。実際に実行ボタンを押すとその様子が見れると思います。
UnityではScriptを書くことで、自分だけの動きをGameObjectへ追加することができます。
実際に作ってみましょう。
まず、Projectタブ上で右クリックし、Create -> Scripting -> MonoBehaviour Scriptをクリックしてください。
今回は名前をPlayerMoveにします。
作成できたらダブルクリックしてエディタで開いてください。
すると、以下のようなコードが表示されると思います。
using UnityEngine;
public class PlayerMove : MonoBehaviour
{
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
}
// Update is called once per frame
void Update()
{
}
}
Start() と Update()
まずは、この2つの関数について簡単に説明します。
-
Start()
- ゲーム開始時に一度だけ呼ばれる関数
-
Update()
- ゲーム実行中、毎フレーム呼ばれる関数
今は、
Start()は最初に一度だけ、Update()はゲームが動いている間ずっと呼ばれ続ける。
という理解で大丈夫です。
では実際に、この2つの関数が本当に呼ばれているのか確認してみましょう。以下のコードをそれぞれStart()とUpdate()の中にコピペしてください。
Debug.Log("start"); //Start()の中に
Debug.Log("update"); //Update()の中に
今回は
Debug.Log()
という関数を使用しています。
Debug.Log()はConsoleへ文字を表示するための関数です。
次に、このScriptをSphereへアタッチ。
ScriptをGame Objectにアタッチする方法は主に2つあります。
-
スクリプトを直接ドラッグ&ドロップでGame Objectのインスペクターに持っていく
-
Sphereを選択し、Add Componentをクリック、検索欄へPlayerMove(アタッチしたいスクリプト名)と入力し、追加
無事アタッチできたらゲームを実行してみましょう。
Consoleタブを見ると、
Start
Update
Update
Update
・・・
のように表示されたと思います。
コンソールタブの場所がわからない方はUnityの画面設定まで飛んで再度確認しましょう。
Start()は一度だけ、Update()は毎フレーム呼ばれていることが確認できましたね。
New Input System (とそのほか便利機能)
では、実際にSphereを動かしてみましょう。今回はWASDで球を前後左右に動かせるようにしたいと思います。
今回はUnity6で標準となっているNew Input Systemを使用します。
※InputActionという大変便利な機能があるのですが、今回は解説いたしません。
気になる方は調べてみてください
まずはコードの先頭へ
using UnityEngine.InputSystem;
を追加してください。
その後、コードを以下のように書き換えます。
public class PlayerMove : MonoBehaviour
{
[SerializeField] float moveSpeed;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
//Debug.Log("start");
}
// Update is called once per frame
void Update()
{
//Debug.Log("update");
Vector3 move = Vector3.zero;
if (Keyboard.current.wKey.isPressed)
move += Vector3.forward;
if (Keyboard.current.sKey.isPressed)
move += Vector3.back;
if (Keyboard.current.aKey.isPressed)
move += Vector3.left;
if (Keyboard.current.dKey.isPressed)
move += Vector3.right;
transform.position += move * moveSpeed * Time.deltaTime;
}
}
はい、なんか新しいものが色々追加されましたね。順に紹介します。
SelializeField
こちらはprivateの値をUnityのインスペクター上から設定できるようになる大変便利なものです。実際にインスペクターを見てみましょう。以下のようになっていると思います。
こちらのMove Speedのボックスに入れたい値を入れることで、移動速度を変えられるようにしてあります。
ただ、なんでもSelializeFieldで解決するのはやめましょう。
初心者のうちはバンバン使っていいと思います。
Vector3
こちらは3次元のベクトルです。前述したComponentのTransform内のPositionもこの型です。コードでは
Vector3 move = Vector3.zero;
とすることで(0,0,0)に初期化などをしています。また、
Vector3.forward
Vector3.back
Vector3.left
Vector3.right
とすることでそれぞれ
(0,0,1)
(0,0,-1)
(-1,0,0)
(1,0,0)
を表します。
Keyboard.current
現在接続されているキーボードを保持しています。今回は
Keyboard.current.wKey.isPressed
とすることでwキーの入力を受け付けています。簡単に説明すると
{キーボードのキー名}key
でどのキーの入力を受け取るか
isPressed
で押されている間
を指定しています。この部分を
wasPressedThisFrame
に変えると押した瞬間
wasReleasedThisFrame
に変えると離した瞬間を指定できるようになります。気になる方は調べてみてください。
Time.deltatime
こちらは1フレームあたりにかかる時間です。
PCによってゲームの処理速度は異なります。
そのため、Time.deltaTimeを掛けることで、どのPCでも同じ速度でSphereが移動するようになります。
保存したら再びゲームを実行してみましょう。
今度はWASDキーを押すことでSphereを自由に動かすことができるようになったと思います。
これで、Scriptを書いてGameObjectへ追加し、自分でGameObjectを動かすことができました。
ScriptはUnityで最もよく使用するComponentです。今後の記事でも何度も登場するので、少しずつ慣れていきましょう。
実行中の変更
さて、一旦動くものが出てきたので実行中もシーンビュー上で変更ができる話をしましょう。
まずゲームを実行してみてください、そして実行状態のままシーンビューでsphereを選択してみましょう。おそらく実行前と同じように移動させることができるはずです。
また、SelializeFieldの値なども変更できます。
この機能は大変便利で、例えば「ゲームのステージを作っているけど一番最後のボス戦だけデバッグしたい」なんて時に実行してから自分でボスの前までキャラクターを持って行ったりできます。
では実行中に行った変更がどうなるのか見てみましょう。sphereをステージの外側に持っていって落とし、実行を終了してみてください。
どうでしょう?sphereが初期位置に戻ったと思います。Selialize Fieldなどの値も戻っているはずです。
さて...勘のいい方ならお気づきかもしれませんが、ここに実行中に色を変えさせた理由が詰まっています。
良くも悪くも実行中に行った変更は保存されません。
大事なことなのでもう一度言います。
実行中に行った変更は保存されません。
長時間の作業の上、実行中だった事に気がつくと全てが破滅します。
気をつけましょう。
Scene (シーン)
はい、というわけでずっと単語自体は出てましたが謎だったSceneについて解説していきます。
Sceneとは1つの画面の単位です。ただ、これだけでは分かりづらいとは思うのでもっと詳しく説明します。
例えば、3Dゲームについて思い浮かべてみてください。タイトルは多くの場合2Dで構成されているはずです。そして、Game Startのボタンを押すと3Dのゲームの画面へと遷移します。
この時のタイトル画面とゲーム画面がそれぞれSceneになります。
分かりやすく下の図にまとめておきました。
と、いうわけで実際にSceneを作ってみましょう。
プロジェクトタブからScenesというフォルダを開き、右クリック、Create->Scene->SceneでSceneを作成します。今回名前は「CanvasScene」にしましょう。
さて、作ったSceneを開くためにCanvasSceneをクリックすると下の画像のような警告が出ることがあります。
はい、これは「Sceneをセーブしますか?」という警告です。おとなしくSaveを押しましょう。
Sceneは変更を加えた場合セーブを必ずする必要があります。離れる際には絶対にCtr+S (Cmd+S)を押しましょう。
絶対に、絶対に押しましょう。約束です。
...というわけで無事セーブできたらSceneを移動してみましょう。
今まで追加していたSphereが画面から消えたはずです。
Canvas
さて、こちらのSceneではCanvas(UI)について学びましょう。
まずCanvasとは何か軽く説明するとゲームのUIを表示するための板です。
実際に動かしながら学んでいきましょう。
ヒエラルキー上で右クリックし、UI(Canvas)->CanvasでCanvasを作成します。
※Canvas生成と同時にEventSystemがヒエラルキーに追加されていることを確認してください
ではよく使う項目について解説していきます。
Image
まずは Image です。これはゲーム画面にキャラクターや背景のイラストなどを表示するための Component です。
さっそく作ってみましょう。
ヒエラルキーのCanvasの上で右クリックし、UI(Canvas)->Image で Image を作成します。
画面の真ん中に白い四角が表示されたと思います。これが Image です。
「白い四角を Image だなんて!なんて抽象的なんだ!!」
という声が聞こえてきそうです。
インスペクターを見ると、「Source Image」という項目があります。
今は「None」となっていますが、右の ⦿ をクリックすると色んなイラストが出てきて好きなものに変えることができます。
ここにプロジェクトタブから好きな画像をドラッグ&ドロップすることで、自分の好きな画像に変えることもできます。
Text (TextMeshPro)
次はゲームに文字を表示する Text (TextMeshPro) です。
Canvasの上で右クリックして、UI(Canvas) -> Text-TextMeshPro を選択してみましょう。
……おっと、何やら英語の変な画面が出てきましたね。
安心してください、ウイルスではありません。
TextMeshPro を使うために必要なファイルを準備してくれる画面です。上の「Import TMP Essentials」を大人しく押しましょう。下は無視していいです。
絶対に上を選んでください。
インポートが終わったら、ポップアップはバツボタンで閉じて大丈夫です。
画面に「New Text」と表示されましたね。
文字を変えたいときは、インスペクターの「Text Input」という大きな枠の中に、好きな文字を打ち込んでみてください。画面の文字がリアルタイムで変わるはずです。
太字にしたり、色を変えたりできます。
ただし、残念ながら日本語は初期状態では対応していません……。導入方法はありますが、ここでは割愛させていただきます。気になる人は調べてみてください。
Button
最後は、プレイヤーがクリックできる Button です。
Canvas の上で右クリックし、UI(Canvas) -> Button-TextMeshPro を選択します。
画面にボタンが現れましたね。
ここでヒエラルキーの「Button」の左側にある▶をクリックして、中身を展開してみてください。中に「Text (TMP)」が入っているのが見つかると思います。
そう、Buttonは「ボタンの土台(Image)」の中に「文字(Text)」がセットになって入っているものなんです。
ボタンの中の文字を変えたいときは、この中身にある「Text (TMP)」をクリックして、先ほどと同じようにインスペクターから文字を書き換えてあげればOKです。
あとがき
ここまで読んでくださった皆様、大変ありがとうございます。
自分が初心者の時わからなかったことを意識して書いたらとんでも無く長くなってしまいました...この記事が誰かの役に立ったらとても嬉しいです。
また、この記事はある勉強会で使用するため早急に仕上げる必要があったのですが、最後のUIの部分は時間のない私に変わって私の友人が手伝ってくれました。心からの感謝を。
さて、記事が長いのであとがきはサクッと終わらせましょう。
この記事読んでくださった皆さん、どうか楽しいUnityライフを送ってください!
















