Hatena::ブログ(Diary)

mikami’s dialy

2011-10-02

学生のためのUnity勉強会「1時間でFPSを作る」チュートリアル(前編)

| 03:31

2011/10/01に学生のためのUnity勉強会に行ってきました。

Unityとは、クロスプラットフォームで動作する3Dゲームエンジンです。以前さいたまiPhone勉強会id:nakamura001さんのARの話を聞いてUnityに興味を持ったので行ってきました。今回の学生のためのUnity勉強会 第1部の「1時間でFPSを作る」を聞いて、全くUnity触った事がない僕でも「あ、これなら俺でも作れるかも」と錯覚しまうくらい分かりやすかったので忘れないうちにその手順をメモしておこうと思います。ちなみに僕は社会人です。

前編ではFPSを動かすところ迄、後編では照明の当て方、空の作り方、影の作り方を書いていきます。

 

FPSに必要な要素

  1. プレイヤー
  2. 大地
  3. 環境光

の3つが必要となる。これらを作っていく。まずはUnityの基本操作から。

 

基本操作(Mac)

当日はマウスを持って行かなかったのでトラックパッドで操作していたが、やりにくかったのでマウス推奨。

 

UIのカスタマイズ

f:id:mi_kami:20111003011747p:image:w180

左上のこれ。GameとSceneのタブを上下に分割させるなど、ビューの配置を切り替えるのに使う。保存する事も出来る

 

キューブの作成

メニューからGameObject > Create Other > Cubeを選択する

f:id:mi_kami:20111003011954p:image:w360

 

立方体が作れる。もし作ったはずなのに見当たらなければ左下のHierarchyからCubeを選択してキーボードのFキーを押す

f:id:mi_kami:20111003012255p:image:w360

 

タンブル(対象を見ながら回転)・トラック(上下左右の移動)・ドリー(前後への移動)

これらの用語を知らなかったけど、どうやら3DCGの用語らしい(参考)。

  • タンブル : option(alt) + 右クリック + マウス移動
  • トラック : 左クリック + マウス移動
  • ドリー : 中ホイール

 

オブジェクトの移動・回転・スケール(大きさ)

f:id:mi_kami:20111003031904p:image:w180

画面の左上のこれが対応してる。左からカメラの移動、オブジェクトの移動、オブジェクトの回転、オブジェクトのスケール。ショートカットはそれぞれQ、W、E、Rに対応している。

 

f:id:mi_kami:20111003012654p:image:w360

赤、緑、青の矢印がそれぞれX, Y, Zの編集に対応している。赤の矢印を矢印の方向に引っ張るとオブジェクトがXの+方向に移動(移動を選択している場合)。

 

その他のショートカット

とりあえずフォーカスは便利!Fキーを押すと選択しているオブジェクトまでカメラが移動する。

 

FPSを作る

Terrainツールとは

Unityのフィールドを簡単に作る為のモジュールらしい。山や地形を簡単に作ったり、長さが異なる木をいっぱい生やしたり、草を生やしたり...といった操作が簡単にできる。プロジェクトを作るときにパッケージをインポートする必要がある。

 

プロジェクトの作成

f:id:mi_kami:20111003013517p:image:w360

メニューのFile > New Projectをクリックするとダイアログが出るので、下の3つをチェックしてCreateをクリック。

  • Character Controller.unityPackage
  • Terrain Assets.unityPackage
  • Skybox.unityPackage

 

f:id:mi_kami:20111003013511p:image:w360

メニューにTerrainが追加されているはずなので、Terrain > Create Terrainをクリックする

 

f:id:mi_kami:20111003013951p:image:w360

平べったいオブジェクトができる

 

Terrainの設定変更

Terrain > Set Resolution...から何かを変更したのだけど、その辺はうまく追えてなかった。後で確認したら書きます。

 

地形の作成

f:id:mi_kami:20111003015106p:image:w360

左下のHierarchyビューからTerrainを選択すると、右側のInspectorビューにTerrianという項目が出てくる。一番左のボタン(Raise and lower the Terrain height)をクリックする

 

f:id:mi_kami:20111003015150p:image:w360

さっきのオブジェクトを左クリックすると山が作れる。ブラシを変更したり、Brush Size、Opacity(不透明度)を変更すると書き味が変わる。また、山を低くする場合はShiftキーを押しながら左クリックする。

 

テクスチャの作成

f:id:mi_kami:20111003015917p:image:w360

山みたいだけど、質感が無くていまいち山っぽくないので山っぽいテクスチャを張ってみる。Inspectorからブラシのボタン(Paint the Terrain texture)を選択して、Edit TextureボタンをクリックしてAdd Textureを選択する。

 

f:id:mi_kami:20111003020541p:image:w360

Splatの右側にある小さな丸をクリックする

 

f:id:mi_kami:20111003020809p:image:w360

Grass(Hill)を選ぶ。検索窓に入力するとフィルタをかけることが出来る。

 

f:id:mi_kami:20111003021016p:image:w360

フィールド全体にテクスチャが貼られる

 

f:id:mi_kami:20111003021559p:image:w360

もう1度Edit Texture > Add Textureを選択して、テクスチャの選択ダイアログを開く。テクスチャとして「Grass&Rock」を選ぶ。するとInspectorのTexturesに新しくテクスチャが追加されるので、それを選択してSceneで山になっている部分をクリックする。

 

f:id:mi_kami:20111003021556p:image:w360

クリックした部分だけ異なるテクスチャが貼られる

 

木の作成

f:id:mi_kami:20111003022052p:image:w360

今度は木を作る。Inspectorから木のマークのボタン(Place Trees)をクリックしてEdit Trees...ボタン>Add Tree...をクリックする。

 

f:id:mi_kami:20111003022423p:image:w360

Treeの右側にある小さい丸をクリックする

 

f:id:mi_kami:20111003022418p:image:w360

ダイアログが開いたらPalmダブルクリックする

 

f:id:mi_kami:20111003022827p:image:w360

同じようにフィールドをクリックすると木をたくさん設置できる。SettingsのVariationの値によって、それぞれの木の高さを変えたり太さを変えたりできる。

 

草の設置

f:id:mi_kami:20111003024101p:image:w360

草をフィールドに生やす。花のマークのボタン(Places plants...)をクリックしてEdit Details...ボタン>Add Grass Textureをクリックする。

 

f:id:mi_kami:20111003023900p:image:w360

Detail Textureの右側の丸をクリックする。ここでHealthy Colorを変更すると草の色を変更することができる。

  

f:id:mi_kami:20111003023859p:image:w360

ダイアログGrassを選択する

  

f:id:mi_kami:20111003023857p:image:w360

フィールドをクリックするとフィールドに草を設置出来る。

 

プレイヤーの設置

f:id:mi_kami:20111003025057p:image:w360

実際にプレイヤーを配置する。まずはHierarchyのMain Cameraを削除する

 

f:id:mi_kami:20111003025052p:image:w360

ProjectからStandard Assets>Character Controllers>First Person ControllerをSceneにドラッグ&ドロップする

  

f:id:mi_kami:20111003025049p:image:w360

地面にめりこまないようにプレイヤーのZ座標を適切な位置に移動させる

 

FPSを実行してみる

f:id:mi_kami:20111003030027p:image:w180

タブをGameビューに切り替える

 

f:id:mi_kami:20111003030025p:image:w180

再生ボタンをクリックする

 

f:id:mi_kami:20111003030023j:image:w360

FPSが動いた!WASDで前後左右の移動、スペースでジャンプが出来る

 

 

学生のためのUnity勉強会「1時間でFPSを作る」チュートリアル(後編)

http://d.hatena.ne.jp/mi_kami/20111003/1317658256