Unity 初心者の手習い (1) ~ F16 を置いて眺めてみる ~
ちょうど一年前の2012年4月に、Unity の iOS / Android ライセンスが無料!という期間限定のキャンペーンがあって、とりあえず慌てて Unity をインストールして無料ライセンスをゲットしたまま放置していました。とりあえずインストールして放置…いつもの悪い癖です。
でも心の片隅には Unity いじってみるぞという気持ちはいつもあったんです。
そんなわけで、ブログのネタにもなるので Unity をちゃんといじってみることにしました。数回に渡っていろいろ試してみようと思います。
まずは人真似から
Unity のチュートリアルは本家のサイトにいろいろありますが、まったくの初心者向けのチュートリアルはないようです。(「はじめての Unity」といううってつけのチュートリアルがあるのですが、第一回から4ヶ月たった今も更新がされていません…)
そんなわけで、本家以外の分かりやすいチュートリアルを探してそこをスタート地点にしてみます。適当に Unity 入門 でググって出てきた中から適当に選んだのはこちらのサイト。
いまなら無料! Unityで始めるiPhoneゲーム作成“超”入門
無地のキューブ、光源、カメラ、空のテクスチャを配置して、スマホの傾きやマウスで視点をグルグルと変えるというデモです。レクチャーに沿って作ると下記のような空に浮いたキューブを自由な角度から眺められるアプリになります。
Unity 独特の作法として覚えておくこととしては、空のテクスチャは SkyBox を使用してカメラに設定するということ。自前で空のオブジェクトを作ってテクスチャを貼る必要はないようです。カメラに設定した SkyBox に空のテクスチャを貼ると自動的にカメラが上を向いたときに空が見えるようになります。
キューブを別のオブジェクトに変えてみる
キューブでも立体を眺めている気分にはなりますが、せっかくなのでもっと本格的な 3D モデルを表示してみましょう。
Asset Store からモデルをインポートする
Unity には 3D モデルやテクスチャ、デモパッケージなどのさまざまな素材を簡単に購入してプロジェクトに取り込める「Asset Store (アセットストア)」が用意されています。ほとんどのものが有料ですが中には無料のものも見つかります。とりあえず無料の素材で良さげなものを探してみることにします。
Unity の [Window] – [Asset Store] (または ⌘+9)を選ぶとアセットストアのウィンドウが開きます。
開いた画面の右上の検索ボックスに「aircraft」と入力してみましょう。
飛行機がずらずらっと出てくるかと思いますがこのままでは無料のコンテンツを探しにくいので、下図のように SORT BY の「PRICE」を選んで価格の安い順にソートします。するとトップに F16a Fighter Jet が来るかと思います(現在の時点でなので今後変わるかもしれません)。この F16 をキューブの代わりに表示してみましょう。
F16a をクリックして、Import ボタンを押します。
インポートダイアログのアイテムにすべてチェックが付いているのを確認して Import を押します。
Unity の Project ペインに F16 モデル関連のアセットが追加されます。これでモデルのインポートは完了ですが、この時点ではプロジェクトに取り込まれただけで画面には配置されていません。
では、実際に配置してみましょう。Project ペインの f16a 親フォルダ(正確には親プレハブというようです)を Scene ウィンドウにドラッグ&ドロップします。大きさや位置はとりあえず気にせずに適当に手を離しましょう。
すると、Hierarchy ペインの中にも f16a ができます。Project の方の f16a は実体を作るための設計図のようなもので、Hierarchy の方は設計図をもとに実体化されたモノ(正確にはインスタンス化された f16a オブジェクト)と考えればよいようです。Hierarchy の方の f16a を選択するとインスペクターペインにオブジェクトの情報が表示されるので、Transform → position → X, Y, Z プロパティの値をキューブの座標と同じ 0, 1, 0 にします。
これでキューブと同じ位置に F16 が配置されたことになります。
実際に再生してみましょう。
おや、画面に収まりきれませんね。それにもともとのキューブがまだ存在しています。
最後の調整
まず、フレームに収まり切らないのはカメラが近すぎるからです。カメラの位置をもう少し離してあげましょう。Hierarchy の Camera Set → Main Camera をクリックしてインスペクターにメインカメラのプロパティを表示します。
Z の値を -10 から -20 にしてあげましょう。
キューブは Hierarchy から消してしまっても良いのですが、ここでは消さずに「見えなくする」方法をご紹介します。キューブを選択してインスペクターの一番上にあるチェックボックスのチェックを外すと Hierarchy に残したまま一時的に除去することができます。あとでまた戻す可能性があるものや、いくつものモデルを入れ替えたいときにはこちらの方が便利でしょう。
もう一度再生してみましょう。おお、今度は画面にちょうど収まるくらいの迫力ある戦闘機がマウス操作に追従して回転しますね。ひとまず今回の目的は達成です!
最後に、動作とは関係ないですが几帳面な方向けの作業として…。Project ペインの f16a はインポート直後だとプレハブのツリー構造とは別に f16, f16_060 というテクスチャファイルがフラットに展開されてしまってちょっと気持ち悪いです。そんなときには自分で F16 のような親フォルダを作ってあげてそこにまとめてしまえばスッキリします。B型の自分ですらスッキリしました。
次回は Terrain 機能を使って地面を作ってみます。