ブログやYouTubeには、Unityでゲームを開発するための情報がたくさん公開されています。
しかし、その内容は初心者向けというより、「目的を達成するためにどう書けばよいか」という視点で書かれていることが大半で、内容を理解するには前提知識が必要です。
これから何記事かに分けて、Unityの独学を進めていく上で知っていると役立つことを解説していきます。
Unityを勉強しようとする方は、まず最初にこの記事を読んでから他のサイトを見ていただくと、理解がスムーズになると思います。
是非ご活用下さい。
Unityのメニュー体系
まず Unity Hub を起動してプロジェクトを作りましょう。
プロジェクトの種類は何でもいいですが、今回は3d Core を選択します。
プロジェクト名は好きな名前を入力してください。
1~2分待つと下記の画面が表示されますが、これが編集画面(=Unity エディタ)です。
この画面を使ってゲームのキャラクタや道具、地面や背景、壁の作成、アニメーション、C#のプログラム作成など、様々なことを行います。
最初に、この画面の概要について軽く触れておきましょう。
尚、この記事はUnityの概要をつかむことを目的としているので、細かいことは考えずザックリと理解して下さい。
Unityエディタの構成
Unityエディタを説明する上で、シーンとかオブジェクトとかコンポーネントとか、いろんなキーワードが登場します。
ここでのポイントは、Unityエディタの画面は複数の区画に分かれていて、それぞれ役割があるということです。
黒文字はUnityエディタ上の名前(タブ名)、濃い緑はその役割を記載しています。
キーワードの意味、Unityエディタ上のタブの役割
キーワード | 意味/役割 |
---|---|
プロジェクト | ゲームを構成する様々な情報(シーン、アセット、C#プログラム、画像、他) を一纏めにしたもの。 1プロジェクトにつき1つフォルダが作成され、その下に階層的に保存されている。 |
ゲームオブジェクト | ゲームを構成するキャラクタ、道具、壁、木、地面、カメラ、ライトなど形状を持つ 物体(=オブジェクト)の総称。 複雑な形状のゲームオブジェクトは、複数のゲームオブジェクトで構成されている。 |
シーン | 映画やドラマのシーンと同じ意味で、ゲームに登場させる場面(=シーン)のこと。 1プロジェクトにつき1つ以上のシーンが必要で、シーンが複数ある場合はプログラムで 随時切り替えていく。 Unityエディタのシーンタブから、シーンにゲームオブジェクトを追加/削除したり、 ゲームオブジェクトごとの座標指定、回転、拡大、縮小などを行う。 |
コンポーネント | ゲームオブジェクトの振る舞いを設定するための部品(=コンポーネント)。 物理特性を設定するもの、座標を設定するもの、アニメーションを設定するもの、 効果音を鳴らすものなど様々なコンポーネントが用意されている。 |
アセット | シーンに配置することが可能なパーツ(=資産=アセット)の総称。 ゲームオブジェクトはもちろん、ゲームオブジェクトに貼り付ける色や光沢などの 素材、音楽や動画、C#プログラムなど様々なアセットが存在する。 |
ヒエラルキー | 直訳すると「階層構造」 Unityエディタのヒエラルキータブでは、シーンに配置されたゲームオブジェクトが 階層構造で表示され、ここからも追加/削除が行える。 |
インスペクター | 直訳すると「監視員」。 Unityエディタのヒエラルキータブは、指定したゲームオブジェクトに登録されている コンポーネントと詳細情報が表示される。 また、ここからコンポーネントの追加や削除、詳細情報の変更を行う。 |
Unityエディタのメニュー構成
文字が小さくて読めないと思いますので、ここでは数多くのメニューがあることだけを理解しておいてください(画像はクリックすると拡大します)。
まず最初は、Unityエディタ上部のメニューについてです。
上部メニュー
すべての機能がこのメニューから選択できます。
ただ、よく使う機能はマウス右クリックで簡単に呼び出すこともできるので、それほど頻繁に使う事はありません。
右クリックで呼び出すメニュー
ヒエラルキータブ、プロジェクトタブ、アセットタブは、右クリックによりサブメニューが表示でき、関連する機能をここから選択できます。
実はこのメニューの利用頻度が一番高いです。
ヒエラルキータブに表示されるオブジェクトから呼び出すメニュー
厳密に言うとメニューではありませんが、ヒエラルキータブに表示されているゲームオブジェクトをマウスクリックすると、それぞれに登録済みのコンポーネントがインスペクタータブ(右端)に表示されます。
インスペクタータブでは、表示されるコンポーネントの削除や追加、コンポーネントごとに用意された各種設定値の変更が可能です。
Unityを理解する上で知っておくべきこと
ここからは、Unityを勉強する上で知っておくべき概念的なことについて紹介致します。
これらのことを理解しておくと、後で書籍やYouTubeを見たときに理解しやすいと思います。
シーンとゲームオブジェクトの関係
これまでの説明でも軽く触れましたが、Unityは1つ以上のシーンが必要で、シーンごとにゲームオブジェクトを配置しなければなりません。
新しくプロジェクトを作成すると、自動的にシーンが1つ生成されます。
ゲームオブジェクトの階層イメージ
最も単純なゲームオブジェクトとして、球体、四角形、円柱などの基本的な図形が思い浮かびますが、より複雑なロボットや人、動物などのゲームオブジェクトは、複数のゲームオブジェクトを階層的に組み合わせて実現しています。
下図はキャラクターの例ですが、複雑な親子関係で成り立っていることが分かると思います。
ゲームオブジェクトとコンポーネントの関係
ゲームオブジェクトの振る舞いを決めるのがコンポーネントですが、両者の関係を図で表すと下記の様になります。
ゲームオブジェクト毎に複数のコンポーネントが登録されており、ゲームオブジェクトの役割や動作によって、必要なコンポーネットが変わってきます。
まとめ
今回はUnityを独学する上で、知っておくと理解がしやすくなる知識を紹介しました。
Unityは複雑な構成になってはいますが、その考え方はシンプルで、
・作りたいゲームに応じて、シーンにゲームオブジェクトを配置する
・ゲームオブジェクトの振る舞いを決めるため、コンポーネントを追加する
という2点だけです。
弾丸が飛ぶ、物が落下するなどの物理法則を適用する場合も、キーボードでキャラクターを動したり、アニメーションや効果音を鳴らすのも、全てコンポーネントの追加で行います。
これらのことを理解せず独学を始めると、かなり遠回りになるので、しっかりとポイントを押さえてから入門書やYouTube動画を見るようにしてください。
この記事が皆さんのお役に立てれば幸いです。