Let’s play Kawaii dress-up with Daz Studio, and explain how to make a Kawaii image.

Daz Studio DazのアニメーションをUnityにエクスポート

Daz Studioで作ったフィギュアが 、キーボードの操作によりファッションショーの舞台で動きまわるというUnityゲームを作ってみようと試みていますが、Daz to Unity Bridgeでアニメーションがエクスポートできないトラブルに見舞われました。
そこで今回は、Daz Studioのエクスポート機能を使って、FBXファイル形式でファイルを保存、これをUnityで開いてアニメーションが無事にUnityで読み込まれるファイル形式になっているかどうかを検証してみましょう。

FBX形式とは

3Dファイル形式の一つです。Mayaという有名なモデリングソフトがあるのですが、その会社が作ったファイル形式です。フィギュアの骨格(ボーンとかリグとか言われるもの)もファイルに含めることができるファイル形式なんですね。なので、アニメーションもファイルの中に含めることができるのです。

FBX形式でアニメーションを含むフィギュアをエクスポートする

前回に引き続き、Interactive Licenseを購入したYunaフィギュアを使います。
Smart ContentsにあるAnimationを選択して、Yunaフィギュアにおじぎするポーズを当ててみました。
WindowメニューのPanesからanimate2を選択し、図の右下にあるようなアニメーション作成用のタイムラインを開いておきます。

animate2は有料機能です。
詳しくはDaz Studio アニメーションの作成をご覧になってください。

服などはすべてYunaフィギュアの子オブジェクトにしておいてください。

アニメーションタイムラインの灰色部分を右クリック。「Bake To Studio Keyframes」を選択してフィギュアにアニメーションを焼き込みます。

Yesをクリック。

今度はフィギュアのいるウインドウの余白部分を右クリックして、「Select all」を選択し、すべてのオブジェクトを選択します。

Unity側の準備

Unityで新規プロジェクトを作成。
これを開いておきましょう。
ここではDaz Animationというプロジェクトを作成します。

Daz Studioのエクスポートファイルが安定して動くとされている「2020.1.17f1」のUnityエディタを使います。

3Dオブジェクトを扱うので、3Dを選びます。
プロジェクト名を適当につけてください。(今回は Daz Animation)
プロジェクト名を入力したら作成をクリック。

Unityが開きます。
Main CameraとDirectional Light(太陽光ライト)だけがあります。

Export手順

では、ファイルメニューから「Export」を選びます。

あなたがUnityエディタを保存したドライブにはUnityというフォルダがあるはずです。
このUnityの中にProjectというフォルダがあり、そこに今回作成したプロジェクト「Daz Animation」があります。その中の「Asetts/Scene」フォルダの中に適当な名前をつけてアニメーション付きYunaちゃんのFBXファイルを保存します。
最後に保存ボタンをクリックしてください。

FBX Export Optionsが開きます。丸印を選択してください。

FBX 2014-Binaryを選択してください。

Acceptボタンをクリックすると、エクスポートが始まります。
書き出すのに少し時間がかかります。

UnityでFBXファイルを確認する

ではUnityのProjectウインドウで、Assetsフォルダの中のSceneフォルダを開くと、先ほど書き出したYuna Animationがあることがわかります。

三角形マークの左横にあるのが、Yuna Animation Inport Settingです。
三角形マークをクリックすると中身が展開され、書き出したものがすべて表示されます。

このアイコンがUnityのアニメーションファイルです。
Yunaちゃんがお辞儀するアニメーションの書き出しに見事成功しました。

管理人のコメント

さて次回は、Unity側の操作で、Dazで作成したアニメーションをDazからエキスポートしたYunaちゃんフィギュアに適用し、おじぎアニメーションを再生するまでの手順を説明していきます。

次回の説明のポイントは、Unityがどのようにしてアニメーションを動かしているのかということです。
Unityはとても複雑な手順でアニメーションを動かしています。なぜならゲーム上のアニメーションだからです。
ゲームはユーザの何らかの操作でアニメーションを再生します。
そこでアニメーションコントローラという仕組みを用いて、アニメの再生を行います。
アニメーションコントローラには通常、複数のアニメーションが登録されています。
これをスクリプトと呼ばれるプログラミングで、ユーザの操作に合わせてアニメーションを指定して動かすということをしています。たとえば、上向き矢印キーを押すと歩くアニメーションが再生される、何もキー操作しないと待機状態アニメーションを再生するというようなことです。

プログラミングまで手をつけると大変なので、次回はアニメーションコントローラを作成し、そこにDazからエクスポートしたおじぎアニメーションを登録し、プログラミングなしで再生してみるということを解説します。