さて,3Dの回転する円柱をキャッチするゲーム作りの前に,各種操作を先に覚えておきましょう.
まず,Unityを立ち上げ,新規Projectを適当な名前(例えば3DTestなど)で作成します.すると最初の画面が開きます:
ここで中央のSceneビューを見てください.2DのSceneと違ってちゃんと3D表示されていることが分かると思います:
上の画面で赤い線を引いたところを見てください.Perspと表示されてますね.これはPerspectiveの略で視点を意味しますが,漫画を描いたことのある方ならご存知のパースを意味します.つまり通常の私たちが外の風景を眺めたときの遠近法の働いた視点を表しています.ちなみにPerspの文字をクリックするとIsoの文字に変わり,画面が変わりますが,これはIsometricの略で,等長を意味します.確かに平行に投影されていますね:
これから私たちは3Dのゲームを作ってゆくわけですが,この連載ではもっぱらパースのあるビューを使ってゲーム制作に当たりたいと思います.つまりPerspのモードしか使用しませんので,もし表示が崩れたらすぐにIsoモードになってないか確認してください.ワンクリックで切り替わってしまいますので操作ミスをするとすぐに変わってしまって慌てることになります.
さて,次にHerarchyビューでSampleSceneとなっていることを確認してください.今回の制作では1つのSceneしか使わないのですが,例えば映画の撮影の場合沢山の撮影現場で沢山のシーンを撮影してそれをつなぎ合わせて一つの映画にしますよね? Unityでのゲーム作りもそれと一緒で沢山のSceneを切り替えながらゲームが進行していくというゲームが作れます.このSceneはProjectビューのAssetsフォルダの中のScenesフォルダの中に収めるのですが,今回は1つだけしか使用しないので,現在のSceneである"SampleScene"を取りあえず"MainScene"にリネームしましょう.この操作は今は単なる気分の問題ですが,登録するSceneが増えた時などには大事なことです:
さて,今度はHierarchyビューで先ほどリネームしたMainSceneの左の三角のマークをクリックしその下に表示されたMain Cameraを選択します:
それからその上の6つのアイコンが横一列に並んだところを確認してみてください:
それぞれ左から,Hand Tool, Move Tool, Rotate Tool, Scale Tool, Rect Tool, 最後は移動・回転・拡大縮小の同時にできるツールになります.また上の画面ではHand Toolが選択されています.ただし,最後のボタンは操作が複雑ですので,この連載では使用しません.基本的にこのボタンでできることは全てほかのボタンの組み合わせで実現できます.それでは左から順にみていきましょう.
まずはHand Toolです.Hand Toolを選択した状態でSceneビューを見ると次のように手のアイコンになります:
今はHierarchyビューでMain Cameraも選択しているのでカメラが見ている範囲を表す4つの直線がカメラから伸びています.これをHierarchyビューでDirectional Lightを選択状態にすると太陽マークが光の指す向きを表すようになります:
この太陽マークは光源の位置に描かれています.当然光源の位置はこのSceneに現れる3Dの物体の影の向きや明るさに影響を与えます.
さて,Hand Toolの説明に戻りましょう.Sceneビューは映画で言えばいわば撮影現場です.撮影現場には照明(光源),カメラ,撮影対象が必要です.これに対しGameビューは撮影現場で撮影された映画そのものです.撮影現場ではカメラや照明や撮影対象を操作できますが,撮影された映画それ自体では操作できず,また視点もカメラの視点に固定されます.UnityのSceneビューとGameのビューの関係も全く一緒で,Sceneビューではいろいろなものが操作できますが,Gameビューではゲームをプレイする人の視点が見えるだけで,撮影現場での操作はできません.先ほどご紹介した6つのToolはこのSceneビューで操作するためのものだったのです.
Hand Toolが操作するのはSceneビューに表示される位置の移動を行います.Sceneビューの内部をドラッグするとSceneビューに表示される領域の中央がドラッグした方向に平行移動します. またAltキーを押しながらドラッグするとポインタが目のアイコンに変わり,ドラッグした方向に角度が変わります:
またマウスのホイールを回すと表示領域を見る視点を遠ざけて広い範囲を表示させたり,逆に狭い範囲を大きく表示させたりすることができます.
次回はGameObjectの移動・回転・拡大縮小についてご説明します.