いい感じで生徒さんが増えている、今日この頃です。
ありがたいです。
今回は、ちょくちょく取り上げるUnityについてです。
そうです。「ゆにてぃ」で大丈夫です。
それでは、はりきっていきましょうっ。
Unityで3Dワールドを作成してみる
前回は2Dの簡単なゲームを作成しました。
ユニティを使って簡単にゲームを作成することが出来ましたが、
2Dゲームの作成の際にはコードも多少書いたため、
「何だか面倒だな」と思った人もいるかもしれません。
そこで今回はコードを書かずに、
3Dの世界を走り回るサンプルを作成したいと思います。
実際のゲームはこんな感じです。
© Unity Technologies Japan/UCL
キャラクターを操作して綺麗なニューヨーク的な街並みを走り回ることができます。
実はこれを作るのにコードは1行も書いていません。
前回ご紹介したユニティのアセットのみを使用して作成したものです。
ユニティすごい!ってなりますよね
それでは作り方を見てみましょう。
作り方は次の4ステップです。
1.街並みを読み込む
2.キャラクターを配置する
3.キャラクターに動きを割り当てる
4.カメラをキャラクターに追従させる
1つ1つ見てみましょう
1.ユニティで3Dゲームの街並みを読み込む
今回利用した街は「NYC Block #6」というアセットを利用しています。
アセットストアからダウンロード可能ですので
[window]-[General]-[Asset Store]
を開きます。
しばらくするとアセットストアがUnity上で開くので検索窓に
「NYC Block #6」を検索します。
すると以下のような画面が表示されます。
こんな綺麗なセットがフリーで利用できてしまいます。
ユニティで利用するためにピンクの「import」ボタンをクリックししょう。
しばらくすると次のようなダイアログが出てくるので、importをクリックします。
importが完了したら早速配置してみましょう。
プロジェクトフォルダ内の[Assets]-[OutPost]-[Resources]-[Scenes]の
中にNYC_Block_6というunityのアイコンをしたファイルがあるのでこれを
左側の
Hierarchyの先頭にD&Dします。
すでにあるUnityマークのファイルは右クリックしてRemoveして構いません。
これで真ん中の画面に街並みが表示されればOKです。
これで配置は完了です。
2.ユニティでキャラクターを配置する
次にキャラクターを配置しましょう。
今回はオープンソースアイドル!?を利用しましょう。
ユニティちゃんです。
ユニティちゃんはUnity Technologies Japanにより生み出されたモデルで
ライセンスに従って利用することが可能です。
http://unity-chan.com/
下記ページのライセンス条項に目を通しダウンロードしてください。
http://unity-chan.com/contents/guideline/
ダウンロードが完了したら読み込んで配置していきましょう。
ユニティちゃんのデータはunitypackageという形で配布されているため
これを読み込んでいきます。
[Assets]-[Import Package]-[Custom Package]
から読み込むことが可能です。
CustomPackageを選択すると、ファイル選択ダイアログが表示されるので[UnityChan_1_2_1.unitypackage]
を選択してOpenボタンを押します。選択してimportします。
Openボタンを押すと次のダイアログが表示されるのでimportを選択します。
importが完了したらプロジェクトウィンドウの[UnityChan]-[Models]-[unitychan]を
D&Dで適当な位置に配置します。
これで配置は完了です。
3.Unityでキャラクターに動きを割り当てる
それでは動きをつけていきます。
今回は矢印キーで前後左右に移動させます。
ユニティちゃんには標準で様々な動作や表情のアニメーションが用意されていますが
今回は簡単に動かすことを目的としているためアセットを利用します。
街をインポートした時と同じようにアセットストアを開き「Mecanim Locomotion Starter Kit」を検索します。
このアセットは基本的なモーションがセットになったものです。
NYCの街をインポートした時と同じようにインポートしてください。
importの時に下記の警告が出ることがありますが現時点で問題はないのでそのまま
importしてOKです。
importが完了したらAssetsフォルダにLocomotion Setupフォルダが作成されますので
[Locomotion Setup]-[Locomotion]と開いてください。
Locomotionフォルダの中に音楽の再生マークのような記号がついたファイルがありますが、
これが3Dモデルの動きの流れを定義しています。
これをユニティちゃんに割り当てるため、LocomotionファイルをD&Dでユニティちゃんの
Controllerに割り当てます。
次に動きのスクリプトを割り当てます。
左側のHierarchyでunitychanを選択してAdd Componentをクリックします。
そして検索窓にlocomotionと入力すると「C#」とかかれたLocomotion Playerファイル
が表示されますので選択してユニティちゃんとプログラムを関連づけます。
これで準備は完了です。
スタートボタンを押して実行してみましょう。
矢印キーでユニティちゃんが無事に動作すればOKです。
4.Unityでカメラをキャラクターに追従させる
無事キャラクターを動かすことに成功しましたが
画面が定点観測みたいでみづらいですね。
ゲームらしくカメラがユニティちゃんを追いかけるような
絵を撮り続けられるように修正してみましょう。
ユニティちゃんの頭上の少し上にカメラのポジションを設定したいため、見えない箱の
ようなものを作成し(オブジェクト)これをカメラが追いかけるようにしていきます。
手順としては、Hierarchy上のunitychanを右クリックして[Create Empty]を選択します。
そしてユニティちゃんの少し上になるように配置します。
これで準備はOKです。
それではカメラに設定を入れていきます。
カメラが見えずらいところにあるので検索窓にcameraと入力しましょう。
カメラが表示されたらカメラをクリックして右側のinspectorから「smooth Follow」を選択して
割り当てます
そしてパラメータを次の画像のように設定します。
以上で完了です。
実際に動かしてみましょう。
見事カメラがユニティちゃんを追いかけるになればOKです。
全くコードを書かずにアセットすとあとマウスのクリック、簡単な数字の入力で
3D空間を歩き回るサンプルが作成できます。
ゲームの要素を加えるとなるとコーディングはどうしても必要になってくるものですが、
こんなに簡単に3D世界を作成できるなら続けてゲームも作成してみたいですよね。
ぜひ一度自分自身で作って遊んでみてください。