質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

1回答

9125閲覧

Unityに自作したアニメーション付きキャラモデルをインポートしましたが、動きません

poppokingyo

総合スコア2

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

0クリップ

投稿2021/07/07 14:34

編集2021/07/08 00:13

前提・実現したいこと

Unityで簡単なアプリを作ろうとしています。
Mayaで自作したセットアップ済みキャラモデルとそれに付随したアニメーションを使用しようとしましたが、再生されません。なんとか動くようにしたいです。
インポートセッティングのプレビューですら再生されないのでAnimatorControllerの遷移設定ミスではないと思います。
イメージ説明
↑Humanoid設定にし、UnityModelでもプレビューしてみましたが、1フレーム目のTポーズのまま全フレーム固まっています。

〆切が近く、早急に解決したいです。

発生している問題・エラーメッセージ

UnityEditor.ObjectPreview was not disposed properly. Make sure that base.Cleanup is called if overriding the Cleanup method. If you are implementing this in an Editor or EditorWindow, don't forget to call ObjectPreview.Cleanup in OnDisable. UnityEditor.ObjectPreview:Finalize ()

UnityEditorと出ていますが、初心者なのでエディタ拡張は理解できず手が出せないでいます。

試したこと

Animation Typeが合っていないかと思い、Generic、Humanoid、Legacy全て試しましたがどれも微動だにしません。
Humanoidのボーンは全て認識しています。

Maya側でアニメーションやブレンドシェイプをFBXに含めるメニューにチェックを入れてあります。
ただ、関係あるかはわかりませんが「The plug-in has changed some animation curves tangents type to User to ensure interoperability. This mode change will not affect the animation curves' values」というような警告が書き出し時に出ます。

エラーメッセージや関連しそうな機能を片っ端から検索してみましたが、答えらしきものにたどり着けませんでした。

漠然とした質問ですみません。手がかりだけでも掴めたらいいなと思います。

補足情報(FW/ツールのバージョンなど)

Unity2021.1.9
Maya2020
を使用しています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Bongo

2021/07/07 18:53

「UnityEditor.ObjectPreview was not disposed properly.」に関しては知識不足につき関係あるのか判断しかねますが、勘で申し上げると直接の関係はないんじゃないでしょうかね...Unityを再起動しても、そのモデルをインスペクターで調べようとすると必ず発生するでしょうか? そのモデルだけで常に発生するのなら何らかの関係があるのかもしれませんが、そうでないならそれはひとまず放置して「インポートセッティングのプレビューですら再生されない」の方を何とかした方がいいような予感がします。 「Humanoidのボーンは全て認識しています」ということでしたら、Rigタブの設定についてはHumanoidが適切そうですね。Animationタブの様子はどうなっているでしょうか? 手探りですみませんが、インスペクターのスクリーンショットをご提示いただけると何かヒントが得られるかもしれません。下部のプレビュー欄の右上の人形アイコンメニューを「Unity Model」に切り替えると、キャラクターのモデルに代わって全身タイツのおっさんでアニメーションの確認ができるかと思いますが、それでもやはり制作したアニメーションは表示されずインポートできていない様子でしょうか?
poppokingyo

2021/07/08 00:23

返信ありがとうございます。 他のアセットの干渉があるんじゃないかと思い、まっさらな新プロジェクトにインポートしてみましたが様子は変わりませんでした。このモデルに限り「UnityEditor.ObjectPreview was not disposed properly.」が出てプレビューすら再生されないようです。 UnityModelのおっさんも試してみましたが動く気配はないです。 やっぱりMayaでの作り方が悪かったのでしょうか…?
Bongo

2021/07/08 02:06 編集

追記依頼欄でコメントしておきながら申しわけないのですが、ちょっと遭遇したことのない症状で手も足も出ないです... 何か情報はないかと思って検索してみたところ、https://forums.autodesk.com/t5/maya-animation-and-rigging/problem-exporting-animations-from-maya-to-unity-animations-don-t/td-p/7844552 に投稿されている症状は「アニメーションクリップは一定の長さを持っているように見える」、「プレビュー欄は再生ボタンを押しても固まったまま動かない」という点で似通っているように思いました。 投稿者さん自身による解決手順によると... 1. Make your animation and save it in a clip (if you have not already done so) 2. Go to game exporter and ignore the model tabs and animation clips, you go directly to time editor. 3. Select your clip in the tab and click add new clip. Make sure that export everything is activated, or select the bones in the outliner and the clip and change to export selected (this opcion reduce the file size, and you MUST export the model in the model tab. The names must of type "yourModel@animName). Any other combination doesn't work for me -.- 4. Export and load in unity とのことですが、あいにくMayaも持っておらず、すみませんが私には文章中の「game exporter」とか「time editor」というのがどういう機能かわからないです。ご質問者さんならあの投稿で何かお気付きの点があるでしょうか...? 追記 もしかすると https://support.borndigital.co.jp/hc/ja/articles/115010583727-Maya-%E3%82%B2%E3%83%BC%E3%83%A0-%E3%82%A8%E3%82%AF%E3%82%B9%E3%83%9D%E3%83%BC%E3%82%BF%E3%81%A7%E4%B8%80%E9%83%A8%E3%81%AE%E3%82%A2%E3%83%8B%E3%83%A1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%8C%E5%87%BA%E5%8A%9B%E3%81%95%E3%82%8C%E3%81%AA%E3%81%84 にあるような設定も関係あるかもしれません。この辺は問題なさそうでしょうか?
poppokingyo

2021/07/08 03:09

追記ありがとうございます! 教えていただいた手順を実行したところアニメーションの再生自体は出来ました! ただ、一部のパーツが付いてこなかったり一部の関節の向きが変わっていたりします…
Bongo

2021/07/08 03:50

うーん、ちょっと前進したもののまだトラブルは残ってしまいますか... マニュアルの https://docs.unity3d.com/ja/2018.4/Manual/HOWTO-exportFBX.html#Maya だとかはご確認済みでしょうか?「複雑なデフォーメーションのエクスポート」によると、一つの頂点に対して4つを超える数のボーンが影響を及ぼすようなケースだとアニメーションが歪んでしまうことがあるっぽいのですが... https://docs.unity3d.com/ja/2018.4/Manual/MuscleDefinitions.html で解説されているMuscle & SettingsのPreviewスライダーを操作して手足を動かしてみた場合のモデルの追従状況は正常でしょうか。こちらでも同様に関節の曲がり方が狂っているならリギング方面、こちらだと正常に追従するならアニメーション方面で原因を探ることになるでしょうかね。
poppokingyo

2021/07/08 04:21

Muscle & Settingsでのチェックでは正常についてきていますね… しかしアニメーションすると変な捻りが入るようです。 あとは手に持っているはずのアイテムが原点に転がっています
Bongo

2021/07/08 20:42

https://answers.unity.com/questions/47819/maya-animation-breaks-in-unity.html のesmith08さんの事例が似ているんじゃないかと思いましたが、どうやらアニメーションの異常を完全に解消することはできなかったようですね。 Mixamoの話ではありますが https://answers.unity.com/questions/1404018/why-are-my-animations-not-working-correctly.html に異常なねじれが生じるケースが投稿されていました。ですがこちらはアバターのミスマッチが原因のようで、ご質問者さんのケースとの関連は薄いかもしれません。 もしさしつかえなければでかまいませんが、アニメーションが狂ってしまったFBXファイルをどこかにアップロードしていただくことは可能でしょうか。製作中の作品に用いるモデルそのものでははばかられるようでしたら、代わりに簡素な棒人間のメッシュで同様の狂いを再現したものでもかまいません。 前に申し上げたように私はMayaを持っていませんのでMaya上でのさまざまな出力設定を試すことはできませんが、それでもUnityへインポートした後のモデルの様子を観察することで何らかの手がかりが得られるかもしれません。あわよくばUnity上で異常を修正することができるかも...とも考えているのですが、やはり異常が起こる現物を見てみてからでないとわからないですね...
poppokingyo

2021/07/09 00:51

手厚い対応ありがとうございます、長々とつき合わせてしまって申し訳ないです… https://drive.google.com/file/d/1q_yxfkbeQ6Q3bFxLsSG91FSfIL8VP7eo/view?usp=sharing googleドライブに圧縮したものを上げてみました。画像以外をやりとりするのは初めてなので合っているかわかりません… 振袖の女の子が鞠(ボール)を投げ上げてキャッチするループアニメションを目指していました。 なんとなくですが、関節の捻りに関しては振袖が下に伸びていることを表現するためにもともとHumanoidモデルの限界を超えて腕の関節を曲げて作ったアニメーションが、Unity上でHumanoidとして正しい範囲に直されることで変化してしまった、つまりは私のリギングミスなんだと思います。 ここは微調整を加えたりDynamicBoneを入れたりしたらある程度の不自然さは残りますが見れるものになりそうです。 そして鞠などのプロップを正しくついて来させる方法はわかりません。色々な階層構造にしてみたり、空オブジェクトを挟んでみたり、ボーンを仕込んでみたりしましたがMaya上でアニメーションキーを打った通りに動くことはありませんでした。 ずっと独学でモデル作りを勉強していて、お手本を見たり添削してもらったりする機会が無かったので、揺れ物やプロップなどに実際にどのような設定をすればよいのか正しく把握できていませんでした。 リギングについての情報は特に少なかったのでほとんど推測で組んだ結果、このようになってしまったようですね…どこかで正しい方法を学ばなくてはいけませんね。 なんだかUnity側とは関係ない、筋違いな問題だったかもしれません。すみません。 そろそろ〆切になるのでプロップを用いない、簡単な待機モーションに差し替えて実装したいと思います。
Bongo

2021/07/09 03:27

ご提示ありがとうございます。すみませんが帰宅後までUnityをいじれないため、試すにしても遅くなってしまいそうです。締め切りが迫っているとのことで、不本意でしょうから申しわけなく思いますが代替の待機モーションで進めていただくのがよさそうです。 鞠や袖の動きまでボーンアニメーションで実現するとなると、むしろGenericの方がいいかもしれませんね。Humanoidは様々なモデル同士でモーションを使い回せる利点があるでしょうが、特に鞠のような通常の人体の部位の範疇に入らないものが混ざっていると対応できないかもしれません。 Humanoidを使う場合は、袖や鞠も含めて正確にMaya上のモーションを再現させるとなると難しいでしょう。キャラクター本体のモーションは基本的な骨格の動きだけを表現するまでにとどめるのがよさそうです。おっしゃるように補助的なパーツはDynamicBoneなどで補うというのはいい案だと思います。
poppokingyo

2021/07/09 10:48

返信ありがとうございます。 なるほど、人型に見えても追加するパーツによってはGenericを使い分けることがあるのですね。参考になります。
guest

回答1

0

ベストアンサー

締め切りまでにお役に立つ回答を提示できずすみません。後の祭りではありますが、モデルまでご提示いただいたからには多少なりとも今後のモデル制作のヒントになればと思いまして、ご提示のキャラクターを私の環境でインポートしてみた場合について報告いたします。

どうやらけっこう複雑な構造のようですね。追記依頼欄で申し上げたようにHumanoidだときついかもしれません。すでにお試しかもしれませんが、Genericなら少なくとも鞠の動きまでは再生できるようでした。

図1

ですが上図のように、袖に関しては腕から硬い羽根が生えているかのような追従のしかたになってしまいました。インポート設定の調整では対応が困難そうで、ご質問者さんがお試しの通り、Dynamic Boneだとかで自然に見えるよう補ってやる必要があるかもしれません。

あいにくDynamic Boneも未購入でして、代わりにRigidbodyで見た目の改善ができないか試してみました。
まず、腕から伸びている袖ボーンのうちSode1~Sode5は、腕の動きの影響を受けないようスケルトン階層外に取り出してしまい...

図2

腕と袖の接続部に相当するSodeMotoにはキネマティックなRigidbodyを付け...

図3

Sode1~Sode5には非キネマティックなRigidbodyを付け、さらにConfigurableJointで「Sode1はSodeMotoに接続、Sode2はSode1に接続...」といった具合に鎖状の構造を構成しました。

図4

動きを安定化するため、末端のSode5をちょっと重くしてみました(鎖鎌の分銅をイメージしました)。Dragも上げて動きを穏やかにしています。

図5

このようにしたところ、下図のように袖が垂れ下がって不自然さが軽減されたように思います。Colliderだとかは省略しましたので、袖が体を貫通してしまいますが...

図6

追記依頼欄でも申し上げましたが、ボーンアニメーションは人体部分の動きの表現までにとどめておいた方がいいかもしれません(特にさまざまなモーションをさせる予定のキャラクターモデルでしたら、Humanoidに適合させておくのが得策かと思います)。
本体から長く伸びた特殊な部位は、アニメーション機能以外の方法で別途対応した方がトラブルが少ないんじゃないでしょうか。Dynamic Boneはけっこう人気のあるアセットのようですので、長髪や振袖の製作例も見つかりやすいと思います。
だだ、袖はともかくとして鞠はどうするか...というのは悩みどころですね。もし私がこういった鞠を持ったキャラクターを作るとしたら、鞠はキャラクターとは独立したオブジェクトとして、キャラクター本体のアニメーションになじむようスクリプトでコントロールする方針にするような気がします。

投稿2021/07/09 20:38

Bongo

総合スコア10807

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

poppokingyo

2021/07/13 10:53

返信が大変遅くなってしまい申し訳ありません、 締切ギリギリまで調整を繰り返したところ無事アニメーションを実装することができました!感謝します! やはり、Humanoidとして適用させるには基本の人体パーツ以外は混乱の元になりそうですね…次にそのような小道具アニメーションを作る時は別オブジェクトで書き出してみようかなと思います。 ConfigurableJointを用いた揺れ物表現というのもあるのですね。初めて知りました。Joint系は工夫次第で色々なことができそうなので勉強してみようと思います。 今回は問題の解決のみならず今後役立ちそうな知識まで教えてくださり、本当にありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問