あるく、はちゅねミク!Unityではじめる3Dゲーム

さて、たまには技術ネタでも載せてみるかということで、今日はUnity3Dについてのネタです。

Unity3Dとは何かというと、一言で言えば3Dゲームツクールみたいなものです。もう少し正確に言うと、マルチプラットフォームに対応した3Dゲームエンジンであり、同種のソフトに比べて無料の割に非常に高機能であるということが特徴的です。同様なゲームエンジンとしてはunrealやhavokといったありますが、これらは非常に高価であり趣味でゲームを製作している人にはおいそれと手を出せるものではありませんでした。しかしUnityはPC版はホビーユースなら無料で利用できますし、Android版やiPhone版も4万円程度と非常にお安く手に入れることができます。またもうひとつの特徴としてMonoDevelopを利用したC#やJavascriptといった汎用的な言語でのスクリプティングでAndroidやiPhone果てはPS3やXbox、Wiiなど多岐に渡るプラットフォームでゲームを動作させることが可能となっています。

まあつまり、お手軽にFPSみたいな3Dゲームが作れるってことやね。

http://unity3d.com/unity/download/

とりあえずここから無料でダウンロードできるので試しにダウンロードしてみてください。

とりあえずこんな感じ。3Dモデリングのソフトを使ったことがある人は割と直感的に扱えると思います。使ったことのない人は・・・ガンガレ!

とりあえず画面の説明だけ軽くしておくと、
画面右側の領域がインスペクタ。各オブジェクトの大きさとか速さとかパラメーターをいじれる領域。
中央のなんか見えてる所がゲーム画面。
左下がHierarchyエリアといってシーンに配置されているオブジェクト一覧。
下部中央がProjectエリアといっていろんな素材一覧エリア。

まあこのへんは、モデリングソフトと同じですので大丈夫でしょう。モデリングソフトと同じくマウス右クリックや中央クリックで視点がグリグリ動かせます。

まあとりあえずチュートリアルは省くとして早速ですが、画面内ではちゅねを歩きまわらせてみましょう。ちなみに、歩かせるまではプログラムなんて殆ど書かなくても大丈夫です。

なにはともあれモデルデータを用意する必要があります。儂はモデリングができないのでどこかから落としてきました。モデルデータはFBX形式で用意する必要があります。LightWaveやMax、Mayaのファイルも扱えるという話もありますが、とりあえず標準的な形式であるFBX形式で用意するのがいいと思います。(各特殊形式を読み込むにはそれに対応したソフト、例えばlwoならLightWaveとかPSDならPhotoshopとか必要)今回はMMDでお馴染みの保管庫@七葉からnh0217をお借りしました。ちなみにモデルは(ライセンスに注意すれば)どれでもいいのですが、モデル作業と同じくらいボーンを入れる作業が面倒なので、ボーンの入ったモデルがいいと思います。

http://nanoha.kirara.st/3dcg/file/4.html?1321453819

とりあえず、Unityで扱える形式にするために一番手っ取り早いのはMetasequoiaでMQOを読み込んでFBXで出力する方法ですね。これにはMetasequoiaのシェアウェアのライセンス料5000円がかかってしまいますが、まあここは作者さんに送信しときましょう。特に、FBX形式でモーションを付ける必要があるのですが、これを商用ソフトでやろうとしてXSIとかMayaとか用意すると百万単位でお金が飛んでいくのでここはMetasequoiaで行きましょう。ただ、モデルの形式によってはどうしてもMayaとかXSIとか必要かも。学生なら勉強と思って買っちゃう?

とりあえず、メタセコでFBXに変換しましょう。ついでにモーションも付けておくといいでしょう。さしあたって、「立ち(静止)状態」「歩き状態」の二種類のモーションを用意しておくと捗るぞ!名前は英語でIdle,Walkとつけておくとさらに捗るぞ!(今は説明しませんがあとで必要になるんですよね。とくに、マテリアルとかの名前も出来れば英語にしておくとあとで読みやすいかも。なんせUnityは日本語の扱いがダメダメすぎますので・・・orz)

ちなみに、Metasequoiaでモーションを付けるんなら今回のはちゅねのような特殊形式でボーンを入れておく必要がありますがkeynoteならお手軽にモーションを付けられます。http://mqdl.jpn.org/ 今回のはちゅねはMQOで、ボーンも入ってましたのでこいつを使ってモーションを付けました。ただ、Metasequoiaはそもそもボーンやアニメが扱えないツールなので特殊な形式でボーンを入れておかないといけないのがあれですがね。

ここで山場は終了。とりあえず、Unityでゲームを作る上での最大の難関はモーションを入れるまでだったりします。落ちてるモデルデータだと形式変換が大変だったり、PMDだったり、いろいろ苦戦するとは思いますが、続く。次回は実際にUnityにモデルをぶち込んで歩かせます。

おまけ FBXまでの変換

PMD→blender→FBX? 何度やっても出来ず挫折
MQO→metasequoia→FBX ボーンが入ってればこれが簡単
lwo、3ds→metasequoia→FBX でもMetasequoiaでボーン扱えないしな
max,ma→どうしろと。

とりあえず、よくわかんない人はMQO形式でボーンの入ったモデルを拾ってきましょうということで。

 

投稿者:

この記事をシェアする