Unityは最近では、ゲーム制作のプロではない人がスマホゲームをアイデア勝負で作って成功していることで注目されている無料ソフト。FuseはUnity内で使う3Dキャラが作れます。途中でmixamoのAuto-Riggerも紹介します。
作品の画面を録画した動画の一例
Fuseで3Dキャラを作り、それをmixamoのAuto-Riggerでアニメーションできるようにし、Unityに取り込んでゲーム感覚で遊べる簡単な作品を作ってみました。
今回は、その作り方を実際の動画で紹介します。Unityは3DCGソフトと同様で初心者にはとっつきにくいですが、慣れれば、無料でここまで出来るのか!と感動します。
作品と呼べるものではありませんが、こんな感じになります。これはキーボードのAとSとDでリアルタイムにコントロールしています。矢印キーでも可能。
UnityでFuseの3Dキャラを取り込んでゲーム感覚のアニメーション >>> YouTubeサイトへ
赤い服の女性が今回無料ソフトのFuse1.3で作ったキャラクターです。それをこれも無料ソフトのUnityに移してアニメーションしたものを動画にしました。
スクリーンキャプチャーソフトを使っています。
Fuse1.3による3Dキャラクターの作成とは?
Fuse1.3は、前回アニメーションで使ったmixamoが開発した3Dキャラクター作成ソフトです。mixamoは今はAdobeの傘下です。
Adobe Fuse CCのアナウンスがあったので、近い将来AdobeのCC(Creative Cloud)に入ると思います。将来的には有料となると思いますが、2018年5月現在でも未だベータ版で無料のようです。
今回のFuse1.3は無料で使えるのでお得ですが、2018年ではFuse CCに移行したために、Fuse1.3は公式には配布されていません。
Fuse1.3は作ったキャラクターデータを外部のソフトなどに渡す際のエクスポートがOBJ形式しかサポートしていません。
これがアニメーションを行うネックになります。OBJ形式では単なる形状データと付随する色情報でしかないです。
ですから、FBXなどのアニメーションに必要な情報が含まれたファイル形式に変換する必要があります。
このために、Fuse1.3で作ったキャラクターデータを、直接アニメーションソフトのUnityに渡さず、mixamoにいったん渡してAuto-Riggerでアニメーションができる処理をします。
その後で、FBX形式でエクスポートして、それをUnityで読み込みます。
なお、最初に使ったAutodesk Character Generatorの場合は、アニメーションが可能な形でエクスポートができます。
なので、すでに作成しているFBX形式のファイルをそのままUnityに読み込んでアニメーションが可能です。
Fuse CCのダウンロードとインストール
以下の場所からWindowsまたはMac用のファイルをダウンロードして、インストーラを起動してFuse CCをインストールします。
http://www.adobe.com/jp/products/fuse.html
以下は旧バージョンのFuse 1.3(Mixamo)の操作画面なので、Fuse CCでは変わっているかもしれませんが・・・
英語版ですが、直感的にわかると思います。リストから選んでいけば3Dキャラクターが出来上がります。
今回はあまり凝らずにシンプルなものが良いと思います。ゲームっぽいアニメーションなので、それほど人物の描写のクオリティーは重要ではありません。
テクスチャーは今回は時間短縮のためにいっさいいじりません。時間があればいろいろ選べます。
テクスチャーとは3Dオブジェクトの表面に貼るビットマップイメージです。リアルな表面に見えますが、処理が軽いので動作は速くなります。
mixamoでUnity用に処理をすると?
先ず、今後のキャラクターの追加編集用にファイルにセーブしておきます。
「Save As…」をクリックして、適当に名前を付けて適当な場所にセーブします。私の場合は名前は「hiro-02」場所はデスクトップとしました。
次に上記と同様に「Animate with Mixamo」をクリックします。
なぜかブラウザーが立ち上がってUnityのアカウント作成/ログイン画面になり、しかもMacKeeperというセキュリティーソフトの画面も表示され「ウィルスが検出されました・・・」と脅してきます。これは無視します。
ここで、mixamoのページに行き、ログイン(またはサインアップでアカウント作成)してMy Assetsを開きます。以下は2015年時点での画面キャプチャーです。
2018年現在ではなぜかログインしてもこの画面は表示されなくなりましたが・・・
Fuseのモデルだとなぜかサムネイルが表示されません。下のモデル名で識別します。上記の画像では2つFuseで作ったモデルがあります。
FuseModelは事前にテスト用に作ったもので、今回はHiro02です。右下に三角の!マークがあるのは、まだRig処理が終わっていないことを示しています。
Hiro02をクリックします。
右の「RIG CHARACTER」ボタンをクリックします。
Auto-Riggerが処理を行って暫くすると上記表示になります。実際はキャラクターは振り向いたりとアニメーションしています。右下の「FINISH」ボタンをクリックします。
右下の「VIEW IN MY ASSETS」をクリックします。
これでFuseで作ったキャラクターがアニメーションできます。
以後は、前回のとおりなので省略して、Unityによるゲームっぽいアニメーションに進みますが、キャラクターデータをパソコン上にダウンロードします。
My AssetsのMy Characterを開きます。
左端のHiro02の!マークが消えています。これでアニメーションが可能になります。Hiro02をクリックして、右上の「QUEUE DOWNLOAD」ボタンをクリックします。
FormatをFBX for Unity(.fbx)にして、右下の「QUEUE DOWNLOAD」ボタンをクリックします。
一番上のHiro-02の右側の「DOWNLOAD」ボタンをクリックします。
「ファイルを保存」ボタンをクリックします。ファイルは通常のダウンロードフォルダーに保存されました。Fuse側の作業は以上で終了です。
Unityのダウンロードとインストール
以下のページに行き、WindowsまたはMac版をダウンロードして、インストーラーを起動してUnityをインストールします。
http://unity3d.com/jp/get-unity/update/
スタートアップ
Unityは今までに使った3DソフトやWebアプリとは異なり、一般的な3DCGソフトに近いです。ですから初心者には若干分かりにくい事は承知しておいてください。
そのかわりに、かなり応用がきくので、自由度が高く、自分なりのオリジナルなアニメーションが作れます。
最初に新規プロジェクトを作ります。
プロジェクト名と関連するファイルをまとめておく場所を指定し、3Dをクリックして「Create project」ボタンをクリックします。
以後は別の記事から引用します。
4Gamer.netの記事から抜粋して引用
素材を追加しよう。拡張子.fbxのファイルと.jpg のファイルを合わせて,UnityのProjectペインにドロップしよう。.fbxだけ持っていくとテクスチャが割り当てられないので,同時に放り込む のが無難だ。
この時点で,Projectの部分のAssetsフォルダにファイルが並んでいるのが見えるだろう。(拡張子は表示されないが).fbxファイルをク リックしてみよう。右のInxpector部分に情報が表示される。そのうち,Animation Typeの部分を「Generic」から「Humanoid」に変更しておこう。選択後,「Apply」ボタンを押す。これでUnityに人体データだと 認識された。
このキャラクターを動かしたいわけだが,Unityの持つキャラクターアニメーションシステムMecanimを使うのが手っ取り早い。まずは,サンプルプロジェクトをダウンロードしてこよう。Ctrl+9キーでAsset Storeを開き,検索窓に「mecanim」と入力してみよう。多くのファイルが表示されるはずだ。その中から,今回は,
「Mecanim Example Scenes」
を使ってみよう。
右上の検索窓で「mecanim」を検索し,Mecanim Example Scenesを選択する まず,Mecanim Example Scenesをダウンロードする。ダウンロード終了後,どのファイルをインポートするか聞かれるので,全部インポートしておく。これで下準備は完了だ。
ダウンロードし
すべてインポートする Mecanim Example Scenesをインポートすると,Assets部分にたくさんのファイルが並ぶのだが,そのうちUnityロゴのアイコンのファイルが10個ある。これは シーンファイルで,それぞれ違ったシーン設定が記録されている。まず,「Animator Controller」をダブルクリックしてみよう。
シーンが読み込まれ,コンテナなどが並んだステージが表示される。その状態で,上にある実行ボタンを押してみると,キャラクターがキー操作で動き回ることが分かる。実行ボタンをもう一度押して停止し,ここにキャラクターを追加してみよう。
Assetのペインから,追加したキャラクターのFBXファイルをつまんで,Sceneペインで元のプレイヤーキャラクターの近くに置いてみる。
次に,その状態でInspectorに表示されている「Animation」「Controller」の欄の右端にある○を押して,Assetsから「Layer」を選択する。
なにをしているかというと,プレイヤーキャラクターの設定を移植しているのだ。左端にあるHierarchyペインからU_Character_REF という部分をクリックすると,Inspectorに,このオブジェクトの情報が表示されるのだが,追加したキャラクターもこれと同じ状態にしてやるわけ だ。見ると,「Idle Run Jump(Script)」というものが続いているので,これも追加する。
元々のプレイヤーキャラクターであるU_Character_REFの設定。これと同じものを追加していく Hierarchyで新しいキャラクターを選択し,Inspectorの一番下にある「Add Component」ボタンを押す。Componentsの一覧から「Scripts」を選択し,さらに「Idle Run Jump」を選ぶ。
次に,Add ComponentでPhysicsから「Character Controller」を追加し,さらにAdd ComponentでScriptsから「Animator Controller_UI」を追加する。
「Idle Run Jump」の追加 「Character Controller」の追加 「Animator Controller_UI」の追加 この状態で実行すると,おそらく新しいキャラクターが地面の下に落下してしまうと思うので,Character Controllerのカプセルを適正な位置にしておこう。Character ControllerのCenterの部分で,Yの値を0から1に書き換える。ここはキャラクターの衝突判定範囲を設定している部分である。
これでキー操作によって,新しいキャラクターが元のキャラクターと併走するようになったはずだ。走行中にマウスボタンを押せばジャンプもできる。
これ以外のシーンについても,同様な方法でプレイヤーキャラクターと同じ動きをさせることができる。スクリプトで制御されている部分については簡単にはいかないにしても,迷路を抜けたり,コンテナに登ったりといろんな動作をさせることが可能だ。
Navigation Meshの例。クリックした場所に向かって,障害物を避けながら移動していく Unityに搭載された高度なアニメーションシステムMecanimは,無料の範囲でももの凄く使えるツールになっている。そこで扱えるデータ が,Character Genaratorの登場で,ほぼ無尽蔵になったわけだ。ゲーム業界的にも大きな意味を持った出来事ではないだろうか。
【3Dプリンター対応】Shade 3D Basic ver.14
まとめ
アニメーションは面白いですが、私としてはポーズを付けてライティングやカメラワークを楽しんで静止画レンダリングしたい気持ちはあります。
ここまでで作成したアニメーション用のキャラクターは残念ながらPoserやDAZ StudioProではうまく読み込めませんでした。
FBMが読み込めて、ポーズやレンダリングができるソフトかWebアプリを探しています。可能性としてはAdobe Photoshop CCなら出来そうですが・・・
有料なのと、普通の素人が使うパソコンでは動作が重くて実質的には使えませんね。
他には無料のBlenderなどがありますが、検討中です。
スマホゲームを素人がアイデア勝負でUnityで作って成功した話をよく聞きます。そこで必要になってくるのが背景や建築物だと思います。スケッチアップはそれが得意なので、今後活躍するかもしれません。
スマホゲームの制作?「スケッチアップ」が活躍する時代が来る?! >>>
ではでは、きらやん