お疲れ様です。 せいさくしゃです。
今回から、いよいよゲームを作りながら解説していこうと思います。
まず、Unityを使うにあたって避けては通れないものがあります。
それは、オブジェクト(物体)の置き方と、そのパラメータの操作です。
今回は、このオブジェクトの基本について解説していこうと思います。
今回の成果
オブジェクト(物体)を置いただけ
今回実装した内容はこちらです。

- 新たなシーンの作成
- 床の配置
はい、これだけです。
今回は、オブジェクト等の解説ということで、作業としては殆ど進めてません。
しかし、基本を理解しないと応用が難しくなりそうなので、今回はゆっくり進めます。
今回の解説
新しいシーンの作り方
今回はまず、フィールドの部分を作るために、新しいシーンを作成します。
シーンとは、タイトルシーン、バトルシーン等のゲーム内の場面のようなものです。
本来、ゲームを作り始める段階では最初からシーンが作られています。
しかし、今回は先にバトルシーンを作っていて、そこからフィールドシーンを追加しようとしています。
なので、自分でシーンを新しく作る必要がある訳です。
シーンを作ると言っても、実際やることはとても簡単なので、軽く説明していきます。

- まずは、画面の上の方にあるメニューから「File」をクリックします。
- そして、メニューが開くので、その中から「New Scene」をクリックします。

じゃん!
はい、これだけです。
ファイルの新規作成のように、シーンを作るだけなら一瞬で終わります。
後は、Ctrl+S等で保存する際に、シーンの名前を付けてあげれば空のシーンの完成です。
ただ、ゲームを作り始める時には初めからシーンが1つ出来ているから、それを使えばいいんだな。
ちなみに、シーンを作った際にいつの間にか勝手に置かれているものがあります。
これは、ゲームを表示するために最低限必要なものと考えてもらえればいいです。
取り敢えず、今回はいじらないのでそのままにしておきましょう。
やったことはないですが、これらを消してしまうと面倒なことになるかもしれないので、消さないように気を付けてください。
カメラが無いと、画面に映すものが何もなくなります。
ライトが無いと、画面を映しても真っ暗なままになります。
なので、これらが無いとまともにゲーム画面が作れない訳です。
オブジェクトの置き方
オブジェクトとは、ゲームに登場する物体全般です。
フィールド、建物、キャラクター等、ゲーム内に存在する物はすべてオブジェクトです。
これがないと、ゲーム画面に何も表示されず、大抵のゲームはまず話にならないでしょう。
それでは実際に置いていきます。

- まず、デフォルトでは画面の左のほうにある「Hierarchy」(ヒエラルキー)を探します。
- そのヒエラルキーウィンドウの中の適当な場所を右クリックします。
- 出てきたメニューの中から追加したいオブジェクトを選択します。
(今回は、「3D Object」→「Plane」を選択しました)

これで、シーン内に新しくオブジェクトを置くことができます。
元々用意されているオブジェクトの形には様々なものがあります。
これらは、皆さん自身で実際に色々置いてみた方が分かりやすいと思います。
ちなみに、オブジェクトを生成した時点では、オブジェクト名が形の名前のままになっています。
私の場合は、ヒエラルキー内のオブジェクト名の部分を2回クリック(ダブルクリックにならないよう間隔をあけてください)して名前を変更しています。
このようにして、シーン内にオブジェクトをどんどん置いていきます。
これを置くことで、ゲーム内に色々な物を登場させられる訳だな。
3Dモデルは、アセットストア等で入手したり、自身で作成して用意しましょう。
これは、何の形も持たない空(Empty)のオブジェクトです。
勿論、何もないので実際に置いてもゲーム画面には何も映りません。
一見意味の無さそうなオブジェクトですが、これにも使い方はあります。私なりの使い方は、主に次の2つです。
- フォルダの代わりとして使う
場合によっては、複数のオブジェクトをまとめて管理したいときがあると思います。
その時に、空のオブジェクトをフォルダのようにして、その下にオブジェクトを入れることができます。
こうすることによって、画面が見やすくなったり、オブジェクトをまとめて動かしたり等、管理がしやすくなります。 - 表示はしないが、機能だけ持つオブジェクトを作る
ゲームを作る際に、全てが目に見えるとは限りません。
例えば、ゲームに必要なデータを管理したり、バトルでのコマンドの選択を管理したりする物等です。
これらは、実際に表示する必要はありませんが、ゲーム内にはオブジェクトとして存在する必要があります。
その時に、空のオブジェクトから機能だけを持つオブジェクトを作る必要があります。
例えば、オブジェクトAを右クリックしてからオブジェクトBを生成すると、オブジェクトBはオブジェクトAの下につきます。
この時、オブジェクトAはオブジェクトBの親、オブジェクトBはオブジェクトAの子と呼ばれます。
また、この時のオブジェクトAとオブジェクトBの関係を「親子関係」と言います。
この親子関係の特徴は、親の変更は全ての子にも影響することです。
例えば、親が移動すると子も親についていくように移動します。
また、親が回転すると子は親を中心としてぐるりと親の周りを回ります。このように、親が動くと子も連動して一緒に動く訳です。
この特徴は、慣れないうちはあまり気にしなくてもいいです。
しかし、恐らくゲームを深く触っていくうちに必須になってくる知識です。
ここではあまり深く説明しませんが、ゲーム作りに慣れて余裕が出てきたら、もう少し詳しく調べてみるといいと思います。
オブジェクトの基本的なパラメータ
オブジェクトを生成すると、形以外にも色々なパラメータがついてきます。
その中でも特に触るであろう最低限覚えておきたいパラメータがあります。
実際に見てみましょう。

デフォルトでは画面右のほうにある「Inspector」(インスペクター)というウィンドウがあります。
その中の「Transform」(トランスフォーム)内のパラメータが最低限覚えておきたいパラメータです。
トランスフォーム内には3つのパラメータがあります。
3つのパラメータはそれぞれ、X、Y、Z、の要素を持ちます。
このX、Y、Z、は数学で使うような、3D空間内の基準となる軸の事です。
Xは横方向、Yは上下方向、Zは奥行き方向を表します。
これらの要素を踏まえたうえで、3つのパラメータの意味を見てみましょう。

- Position(ポジション)
オブジェクトの「位置」を表すパラメータ。
基準の中心から、X、Y、Z、方向にどれだけ移動しているかを意味します。
基準とは、オブジェクトの親(いない場合は世界の中心)の位置の事です。 - Rotation(ローテーション)
オブジェクトの「回転」を表すパラメータ。
オブジェクトの中心を基準として回転している角度を意味します。
この時気を付けて欲しいのですが、X、Y、Z、は回転の中心軸の事を指します。(軸の方向に回転するわけではありません) - Scale(スケール)
オブジェクトの「拡縮」を表すパラメータ。
オブジェクトの中心から、X、Y、Z、方向に対する大きさを意味します。
これらの数値を直接いじることで、オブジェクトの位置、回転、拡縮を変えることができます。
あるいは、シーンの画面内のオブジェクトから出ている矢印等をドラッグすることで動かすこともできます。
(私は、大抵数値を直接いじってしまうので、あまり使っていません)
これらの「位置」、「回転」、「拡縮」は3Dゲームにおいて必須となる知識です。
最低限この3つのパラメータは覚えておきましょう。
それぞれのパラメータの中で、X、Y、Z、の3つの方向に動かして決める。
最低でもこれだけ覚えていればオブジェクトを好きなように置けるんだな。
初めのうちは気にしなくても作れますが、余裕が出てきたら調べてみると制作の幅が広がります。
今回のまとめ
今回は、ゲームを作る際に必須となるであろうことを説明しました。
端的にまとめると、以下の通りです。
- まずは、新しくシーンを作る。(初めてゲームを作るときは用意されたシーンを使う)
- シーン内にオブジェクトを配置する。
- オブジェクトには「位置」、「回転」、「拡縮」の3つの大事な要素がある。
Unityを使って新しくゲームを作るときは、まずこのことをきちんと押さえておきましょう。
これがないと、ゲームを作ることが極端に難しくなります。
これから暫くは、今回のように基本的な事を色々と教えたいと思います。
なので、ゲーム作りの進行もかなりゆっくりなペースで進めていくことになると思います。
基本はきっちり押さえておくと、後でゲーム作りがスムーズに進められると思います。
もどかしいかもしれませんが、気長にお付き合いいただけると嬉しいです。
それでは、今回はここまでにしたいと思います。
お疲れ様でした。