gologiusの巣

プログラミングなどの技術メモです。誰かの役に立てるとうれしいです。

Akeytsuで作成したfbxをUnityでimportした場合、一部の部位が消える

Akeytsuで作成したfbxをUnityでimportした場合、一部の部位が消える場合の対処法です。

現象

Akeytsuでモーション作成 f:id:gologius:20170928201752g:plain

Unityでインポートしたモーション f:id:gologius:20170928202230g:plain

手がないですね

原因

前提説明

原因を説明する前に、このモデルの構造をお話しします。 実は、指にボーンは入っておらず、閉じた手(に武器)と開いた手の二種類(×左右の二つ)のモデルがあります。 それをスケールを1や0にすることで、表示非表示を切り替えています。

↓を見ると、閉じた手と重なった手が重なっていることが分かるかと思います。 f:id:gologius:20170928202134p:plain

デフォルトのポーズ

Unityでインポートして、シーンに配置したときにモデルがやっているポーズ。 Akeytsuで出力したfbxだと、最初に作ったAnimationがデフォルトのポーズになるみたいです。

原因説明

恐らくですが、デフォルトのモーション(ポーズ)で、スケールを0にしている部位があると、他のモーションで表示させようとすると見えなくなるみたいです。

↓のように、スケールが0の部位(この例だと閉じた手)があるポーズが、デフォルトのポーズだとダメ f:id:gologius:20170928202704p:plain

結論

Akeytsuで一番初めに作るポーズは、部位を全部Scale=1にしておきましょう。

そもそも、Akeytsuは最初はTポーズのScale=1ですし、Tポーズをとっている方がUnityでのインポート後の後処理が楽です。