
NEWS
お知らせ
- CGクリエイター科
[ゲームCGゼミ(4)] 簡単なシーンでunity3の基本的インタフェースに慣れる(1)

上のような簡単なシーンを作りながら、unity3の基本インタフェース-特にCG表現のインタフェースに慣れて行きましょう。では順を追ってやっていきましょう。
ちなみにこのチュートリアルの元にしているunity公式チュートリアルはTutorial 1 - GUI Essentialsです。
Ⅰ.まずは、ゲーム空間に簡単な3Dメッシュを表示させてみましょう。

1.新規プロジェクトを作成して、空(から)のシーンを作成してみます。
1)空(から)のフォルダを作成しておきます。
unity3で新規プロジェクトを作成するには、空(から)のフォルダでないと作成されません。
プロジェクトを置きたい場所に、あらかじめ空のフォルダを作成して、適当な名前を付けておきましょう。この例では、unity-semiという名のフォルダを作っています。
2)unity3で新規プロジェクトを作成します。
①unity3で、 File > New Project > 1)で作成したフォルダを指定します。
②パッケージ(素材ライブラリ)の読み込みウインドウが開きますが、空(から)の
プロジェクトにしたいので、
何もチェックを入れずにOKします。
③作成され開かれたプロジェクトのhierarchy(階層)ビューをみると、空(から)のゲーム空間(シーン)にも必ずカメラ(main camera)は用意されていることがわかりますね。しかしほかのものは何もないので、背景色(background color)を除いて、gameビューにはなにも表示されません。この状態が新規プロジェクト新規シーンのunityのデフォルトの状態です。background colorの設定は、main cameraオブジェクトの設定項目の一つとして、main cameraオブジェクトを選択したときのinspect view(詳細ビュー。SIでのプロパティページと同じですね)にいつも見えています。
2.シーンに3Dオブジェクトを配置してみます。まずはunity3の中で作れるオブジェクトを取得してみましょう。

Game Object->Create Other->plane (プレーン) 平面です。SIではグリッドにあたりますかね。
Game Object->Create Other->cube 立方体を取得
3.環境光の設定
Plateとcubeがうっすら見えているのは・・・そうです、初期設定で「環境光(ambient light = SIのアンビエンス)」が有効になっているのですね。unity3では原則的には環境光を使用したライティングを行うのです。
unity3のサンプル画像やサンプルゲームを見ると環境光でなく間接光計算をしているかのようなフォトリアル度が見て取れるので、「原則的には環境光を使用したライティングを行う」ことには疑問に思った方もいると思いますが、これは事前に間接光計算で生成するライトマップが寄与している表現で、unity3はリアルタイムには間接光計算をしないのです。そして「事前に間接光計算で生成するライトマップ」機能は、有償のプロバージョンにしかありません。無償版にもライトマップ機能がありますが、AOが生成ができるものの、間接光計算による焼き付けはできない仕様となっているのです。つまり無償版unity3の中だけで行えるフォトリアルな表現の限界は低いわけで、そのことに注意してビジュアルデザインコンセプトや他のCGアプリを交えたワークフローを考える必要があります。

※ちなみに
UDK3、CryENGINE3の方は間接光を使ったリアルタイムレンダリングを行う初期設定になっていますから、環境光は使用しないことが推奨されています。unity3とは異なるライティング・レンダリングコンセプトなので留意しておきましょう。
4.直接光(源)の取得

unity3のライティングの初期設定が、環境光(源)が有効、かつ直接光(源=ライトオブジェクト)はなし、ということが分かったところで、ではライトオブジェクトを取得してみたいと思います。
ライトオブジェクトはGame Objectメニューの中上段(右図の黄色領域)に、①から③の3種類が用意されています。
①directional light ディレクショナルライト (方向性ライト=無限遠光源=平行光源)
②point light ポイントライト 点光源
③spot light スポットライト スポットライト
ライトオブジェクトはGame Objectメニューの中上段(右図の黄色領域)に、①から③の3種類が用意されています。
①directional light ディレクショナルライト (方向性ライト=無限遠光源=平行光源)
②point light ポイントライト 点光源
③spot light スポットライト スポットライト
では point light ポイントライト を取得してみましょう。
Game Object->Create Other->point light

ライトが何も照らさないのは、予想どおりでしたね? unityでもSI同様、ライトを取得するとワールド座標の原点・立方体の中に配置されましたので、まずは立方体の外側の面を照らすようには見えないわけです。ではポイントライトを上方に移動させて立方体を照らすようにしたいと思います。そのために次に、unity3のシーンビューのカメラ操作法と、ライトなどのオブジェクトのトランスフォーム操作法を見てみましょう。
5.シーンビューの操作
unity3の「シーンビュー」とは、SIのfront,right,top,user ビューのこと、つまりgame view(カメラビュー)意外の全部のビューです。それらのビューでの回転・パン・ズーム操作です。
1) 回転 Rotating (Alt+LMB)
2) パン Panning (Alt+MMB)
3) ズーム Zooming (Alt+RMB)
※これはMudboxでの操作と同一ですね。しばらく操作法メモをモニター近くに貼ったりして慣れるようにしましょう。
6.オブジェクトのトランスフォーム -Transform Tools とショートカットキー-
(SIのSRTパネルとそのショートカットに当たります)

1)移動ツール->矢印ギズモをマウスで引っ張る操作(ショートカットキー:w)
2)回転ツール->回転ギズモをマウスで回す操作(ショートカットキー:e)
3)スケールツール->矢印ギズモをマウスで引っ張る操作(ショートカットキー:r)
※SIのそれらのショートカットはvcxですから、unityのショートカットはキーボードの上下に点対称になった感じですね。
ではpoint light オブジェクトを前上方に移動させて、立方体を照らしてみましょう。
