コンテンツにスキップ

Unityアセットのアニメーションを変換する

このページではUnity Asset Storeから、HumanoidタイプもしくはPropタイプのアニメーション付きFBXをダウンロードし、VketCloudで使える.hem形式に変換するまでの手順を解説します。

2種類の変換方法について

VketCloud SDKにはMotionExport、HEMAnimationConverterの2種類のツールが用意されており、それぞれで処理が異なるため、変換する対象のモデルによって使い分けを行う必要があります。

MotionExport

  • 可能なこと
    • アニメーションのHEM変換
  • 不可能なこと
    • 複数のアニメーション出力
    • IKアニメーションの出力

HEMAnimationConverter

  • 可能なこと
    • Humanoid型のアニメーションのHEM変換
    • 複数アニメーションの一括出力
    • IKアニメーションの出力
  • 不可能なこと
    • Legacy、Generic型のアニメーションのHEM変換

比較表

ツール名 Legacy Generic Humanoid 複数出力 IK対応
MotionExport × × × ×
HEMAnimationConverter × ×

作業前提

今回は例として以下のアセットを使用します。

あらかじめプロジェクトのAssetsに追加しておいてください。

また、Assets/Balloon_Ghost/Animations/Attack.fbxのインスペクターを開き、
「Animation Type」をLegacyに変更します。

ConvertAnimationFromUnityAsset


HEMファイルの書き出し手順

HEMExporter編

Project内のモデル(画像では`Baloon_Ghost_v2 1)を選択し、Hierarchyへドラッグ&ドロップします。

ConvertAnimationFromUnityAsset

モデルのObjectを選択して、Animationコンポーネントが追加されている事を確認します。
追加されていない場合、InspectorビューのAdd ComponentからAnimationを追加し、出力したいアニメーションを設定します。

ConvertAnimationFromUnityAsset

Unity画面上部のVketCloudSDKタブからExport Motionを選択してください。

ConvertAnimationFromUnityAsset

.hemの保存場所選択ウィンドウが起動するので、任意の場所に任意の名前で保存してください。

以下のメッセージが表示されたら、書き出し完了です。

ConvertAnimationFromUnityAsset

HEMAnimationConverter

変換したいモデルのインスペクター上で、Animation TypeHumanoidになっている事を確認します。
(Humanoid型のみ変換可能となっています)

ConvertAnimationFromUnityAsset

HEMAnimationConverterをVketCloudSDKタブ > Tools > HEMAnimationConverterをクリックし、 HEMAnimationConverterを立ち上げます。

ConvertAnimationFromUnityAsset

ConvertAnimationFromUnityAsset

HEMAnimationConverterの画面の左側に変換したいアニメーションファイルをドラッグアンドドロップします。

ConvertAnimationFromUnityAsset

画面右側のModelエリアの右上にある+ボタンをクリックすると、デフォルトでVketちゃんのVRMが指定されます。

ConvertAnimationFromUnityAsset

Convert Animationを押して、hemファイルを保存します。

正常にエクスポートされましたと表示されれば、成功です。

ConvertAnimationFromUnityAsset

HEOファイル書き出し手順

先ほどの例で使用したBaloon_Ghost_v2 1をシーン内に配置します。

ConvertAnimationFromUnityAsset

モデルを配置した図

Animationコンポーネントがアタッチされたオブジェクト(モデルを配置した図ではBaloon_Ghost_v2 1)を選択した状態でVketCloudSDKのExport Fieldを選択してください。
.heoの保存の際、アセットが複数作成されるため、新しいフォルダを作り、その中に保存することを推奨します。

ConvertAnimationFromUnityAsset

保存が成功すると、以下のポップアップウインドウが表示されます。

ConvertAnimationFromUnityAsset

HEMで動くHEOをブラウザに表示する手順

Hierarchyビュー上で右クリックし、3D ItemCreate VKC Avatarを選択する。

ConvertAnimationFromUnityAsset

VKC Item Objectのコンポーネント内で.heoタブを開きselectボタンを押下すると、Selectウィンドウが開くので、さきほど作成した.heoファイルを選択します。
このとき、Enable Boneの項目にチェックを入れます。

ConvertAnimationFromUnityAsset

Object ModeをMotionに変更し、プラスボタン(+)をクリックしモーション用アクションを追加します。

ConvertAnimationFromUnityAsset

モーション用アクションリストのHemのSelectボタンをクリックし、Selectウィンドウで作成したHemファイルをSelectボタンをクリックして適用します。

ConvertAnimationFromUnityAsset

Loop再生について

再生するモーションをLoopさせたい場合はLoopにチェックを入れてください。
※なお、モーションチェック時はLoopにチェックを入れる事を推奨します。

ご注意

Humanoidとして認識できないアニメーションは
Scene Previewにチェックを入れてもEditor上で再生できません。

この状態でビルドすることで、アニメーション付きのオブジェクトをシーン上に出すことができます。

ConvertAnimationFromUnityAsset

小技・Tips等

Humanoid型アニメーションの確認方法

ConvertAnimationFromUnityAsset

Inspectorビュー上で再生した際、Unity Modelが動けばHumanoid型

ConvertAnimationFromUnityAsset

FBXからアニメーションを抽出・編集する方法

プロジェクトタブで対象のfbxを選択したのち、インスペクターのRig > Animation Type > Humanoidを選択しApplyします(下図参照)

ConvertAnimationFromUnityAsset

HumanoidタイプになったAnimationファイルを選択しctrl + Dを押します(下図だとBasicMotion@Idle01
アニメーションファイルが複製され、複製したファイルについては編集が可能

ConvertAnimationFromUnityAsset

HEMをシーンプレビューできない

Humanoidとして認識できないアニメーションは
Scene Previewにチェックを入れてもEditor上で再生できません。

ConvertAnimationFromUnityAsset