4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Fusion360で作成したモデルをUnityにインポートしてサクッと動かす方法

Posted at

この記事読む前に

決して「サクッと動かせたよ」っていう記事じゃないんで。はい。

Fusion360のモデルをUnityにインポートすると

FBXに書き出して実際にインポートしてみると、なんかへんな親オブジェクトなどが
できてすごい扱いづらいんですよね。

image.png

こんな感じで。

プログラムで取得したいのは、この一番下の子のBody1というオブジェクト。

コンポーネントの名前とか、保存したときにつくバージョン名とかでFBXを更新するたびに名前がころころ変わるので、Unityのスクリプトで制御するのはめんどくさい。

今回は、それを解決すべく、いろいろ検証していきます。

ソフトバージョン

Fusion360 2.0.8412
Unity 2019.3.7f1

検証結果

単刀直入に結果を知りたい人が大半だと思うので、先に結果を書きます。

結果は...
Fusion360はUnity向けではない!!!

はい。残念な結果ですね。
おとなしくBlenderとかを使えという結果になりました泣

検証の様子を見たい人は下記をご覧ください。
人生に失望した方はAlt+F4でウィンドウを閉じてください。

いろいろ検証してみよう!!

いろんなパターンで検証してみました。

パターン00:ただの円柱

ただの円柱をFusion360で作成し、fbxで書き出してUnityでインポートする。

Fusion360

こんな感じで、直径1m、高さ2mの円柱を作成した。(デザイン>基準フィーチャソリッド>作成>円柱)

image.png

Unity

Unityでインポートしたところ特別変なところはない。
きちんとxyz軸も同じようにインポートできるし、スケールもそのままインポートできる。
image.png

Hierarchyタブでこのモデルを見ると、このような感じになっている。
image.png

Modelの名前はBody1、Fusion360ではボディ1となっているので、デフォルトでできたモデルの名前はボディ1からBody1に変更される模様。

次は、このモデルの名前を変更してみる。
※モデルの名前が変えれることにあとから気づいたのでパターン名が00-1となっててごめんなさい。

パターン00-1:モデルの名前を変更してみる

パターン00のモデルの名前を変更してみた。
念のため、日本語と英語の両方のモデルを作った。

Fusion360

image.png

2つのボディ円柱cylinderの2つを作った。

Unity

image.png

cylinder円柱の2つのモデルが出来ましたね。
どこかでFBXはマルチバイト文字に対応してないとか聞いてたけど、何とかなるみたいですね。

なので、モデルを2つに増やしてみる。

パターン01:円柱と球

モデルを円柱と球の2つにしてみた。

Fution360

球は直径1mで作成した。(デザイン>基準フィーチャソリッド>作成>球)

image.png

ボディ名はボディ1ボディ2となる模様

Unity

image.png

Hierarchyタブを見ると、下のようにBody1Body2があります。
image.png

まぁ、ここまでは想像通りですね。

次は、ボディをコンポーネントに変更してみましょう。

パターン02:コンポーネント化された円柱

パターン00で作った円柱をコンポーネントにしてからfbxにしてみましょう。

Fusion360

image.png

パターン00のボディを右クリックして「ボディからコンポーネントを作成」を押して作成したコンポーネントです。
コンポーネントの名前はコンポーネント1:1、中身のボディの名前は、コンポーネント化する前と変わらずボディ1でした。

Unity

インポートしたところ、Hierarchyは下のようになりました。
※インポートしたときの3dViewは特に面白いところもないのでこれからは省きます。

image.png

  • Component1:1
    • Component1
      • Body

こんな風に、ボディからコンポーネントにしただけでBody1の親オブジェクトが2つも増えましたね。
それも同じような名前のw

この謎を解明する前に、もう一つ。

パターン03:コンポーネント化された円柱

パターン02と似ているが、ファイル内のボディをコンポーネント化したのではなく、パターン00のファイルをD&Dでインポートすることでコンポーネント化する。

Fusion360

image.png

パターン02とは異なり、コンポーネント名がパターン00のファイル名である00 v4:1となっている。

Unity

image.png

インポートしたところ、

  • 00 v4:1
    • 00 v4
      • Body1

というような構造になっている。
こういう、オブジェクト名にバージョンが入ると、スクリプトで取得できない(FBXを更新するときに名前が変わっちゃう)からめんどくさいよね…

はい次。

パターン04:D&Dで円柱を2つコンポーネント化する

パターン03のファイルにもう一回D&Dで円柱のファイルをインポートする。

Fusion360

image.png

このように2つのコンポーネント00 v4:100 v4:2が出来ました。
これで、コロンの後の数字はインポートしたコンポーネントが被ったときに増える数字でしたね。

Unity

image.png

想像を絶する階層構造です。
1つ目のコンポーネントはパターン03と同じだけど、2つ目のコンポーネントの構造が

  • 00 v4:2
    • 00 v4 1
      • Body 1

となっていて、なんか後ろに半角スペースを空けて1の数字が入ってますね。
こりゃあなんとも意味不明な構造だ。

パターン05:パターン02をD&Dでコンポーネント化してみる。

パターン03,04はパターン00のファイルをD&Dでコンポーネント化しました。このパターン00はボディのままのモデルでした。

なので、パターン02のファイル。つまりコンポーネントされたモデルが含まれたファイルをD&Dでインポートするとどうなるのかをやってみます。

Fusion360

image.png

うん。はい。普通にコンポーネントの入れ子になっただけですね笑
さらに複雑になった感じですw

一応Unityも

Unity

image.png

うん。まぁ想像通りの親オブジェクトのオンパレードw
絶対やめた方がいいw

パターン06:プロパティ

Fusion360のコンポーネントやボディには「プロパティ」というものがあります。

image.png

そこにパーツ番号とパーツ名、説明があります。
これが変更出来たら!!と思ったけど、変更できるものは限られてるんですよね…

具体的にはパターン02の時だけで、ファイル内でボディをコンポーネントに変換したものだけ、コンポーネントのプロパティが変更できるようです。

はいくそ~。

まとめ

やっぱりモデリングしようと思うとBlenderとかそっち系のモデリングソフトが必要ですね。

Fusion360とかは設計系だから、寸法とかもきちっと設定できて作りやすいから、Fusion360で作ったモデル(ロボットとか)をサクッと動かせたらいいなと思ってこの記事を書いてました。

だけど、検証していくうちにだんだんと可能性がなくn...

Blenderとか勉強しよっと。

さいごに一言

image.png

個人的なプロジェクトでヤマハの電子オルガン「エレクトーン」ってやつをモデリングしてるんですけど、鍵盤を作っただけでHierarchyがこんな感じに。
image.png

これでもまだまだ展開しきれてない項目があります。

今はこれの鍵盤をMIDI入力で動かそうとしてるんですけど、こんなオブジェクト名GameObject.Find()で取得できるかい!!!!

FBXがこれで確定ならいいけど、まだ足鍵盤とかパネルとかモデリングしないといけないからどんどん更新されてくし、そのたびにこのバージョンの名前変わってくし、あーもーどうすればいいん!!!

これはUnityというかFusion360の問題だぁ。バージョン管理するのはいいけど、それって出力したFBXファイルにも必要な情報科かい??
もうちょっと何とかならんもんかねぇ。

だれかいい方法おしえてくだせぇ

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?