FBXファイルフォーマットについて  



目次
 1.FBXファイルフォーマットとは
 2.インストール法
 3.アプリケーションごとの使い方
 4.データコンバート検証
 5.まとめ



1.FBXファイルフォーマットとは

 FBXファイルフォーマットとは、3Dデータを異なるアプリケーション間でスムーズに受け渡しが
 できるように設計されたフォーマットで、ポリゴン、モーションキー、シェイプ(モーフィング)、
 マテリアル、テクスチャ、ライト、カメラ、階層情報、IK、エンベロープ等のデータ情報を、
 ソフトの垣根を越えて扱う事ができるそうです。

 現在、Autodeskからは Maya、XSI、Lightwave3D等、主要な3Dアプリケーション向けの
 無償FBXプラグインが公開されています。エンベロープデータ込みで3つ以上のソフトを無償で
 サポートするファイルフォーマットは珍しく、コンバート精度も期待できるため、
 今回はそのプラグインが実際にゲーム制作の現場で使えるものかを調べてみました。
 (実機向け検証なので、NURBSなどのハイエンド用途のものは外しました。)

 ちなみに、FBXとは FilmBox というアプリケーションの略名です。 FilmBoxはモーションキャプ
 チャーデータの扱いに長けたソフトだったそうですが、現在、FilmBox は MotionBuilder という
 名前に変わり、販売元も買収合併によりKaidara社からAlias社、Autodeskへと移行しました。


 プラグインのダウンロードは、こちらのサイトへ進んで下さい。
 Autodeskの FBXダウンロードページ (検索結果で一番上に来た物を覗いて見て下さい。)

 -------------------------------------------------------------------------------
 《ダウンロード手順》
 1. [ダウンロード]に進み、[ FBXプラグイン、コンバータ、QuickTimeビューワダウンロード ]
   という箇所をクリックします。

 2. すると、 [ FBX Plug-ins, Converter, and QuickTime Viewer Downloads ]
   という英文画面になります。* 印の欄を半角英数字で記入して、[ Submit ]を押します。

 3. これでプラグイン一覧画面に切り替わりますが、Lightwave用のプラグインが表示され
   ないので、画面の一番下にある [ Plug-in and Converter Archives ]という箇所を
   クリックします。(その他、旧バージョンのソフト用も上記にありますので、探して下さい。)

 4. Lightwaveのプラグインは2005年8月のver.8.2が最新となります。(9以降は製品版に
   標準機能として搭載されています。)

  ※Autodesk のホームページの構成は定期的に変更されますので、リンク先にジャンプ
   できない場合は上記の手がかりを元に探して下さい。




ソフト名  バージョン毎のFBXプラグイン対応状況
XSI   3.5〜5.0まではAutodeskからダウンロードできます。
  6以降はXSI標準機能として搭載。
  FBX6.0だとXSI6.0では利用できませんので、
  XSI5.xxを使用して下さい。
Maya   5.0〜2009まではAutodeskからダウンロードできます。
  以降のver.では標準装備。
LightWave
  7.5〜8.2まではAutodeskからダウンロードできます。
  9以降は製品版に標準機能として搭載。
  Newtek.com からもダウンロードできます。

3ds Max   5.0〜2010まではAutodeskからダウンロードできます。
  以降のver.では標準装備。
Metasequoia
 ↓FBX入力用プラグインがあります。
  horsetail・・・http://horsetail.sakura.ne.jp/mqplugin/mqfbxi.html

  【上記のURLが消えた時用の避難所】
    こちらの Metasequoia_fbx_plugin.zip
    ダウンロード出来ます。
    ファイル:184.zip
    pass:mqimpexp



2.インストール法


 今回の検証に使ったのは、すべてプラグイン・バージョン6.0.1です。


 XSI4.2

  1. インストールを終えたら、fbxxsi.xsiaddon ファイルを探して下さい。

  

  2. .fbxxsi40.xsiaddon ファイルを
    C:\Softimage\XSI_4.2\Addons にコピーします。

  2. XSIを起動し、ファイルメニュー→アドオン→
    インストールを選択すると、
    専用ウィンドゥが開きます。

  3. 「ファイル名」の欄の右側にある「...」ボタンを押し、
    1.でコピーしたファイルを選択します。

  4. ウィンドゥ下部にある「インストール」ボタンを押します。

  5. ファイルメニュー→読み込み を選択した時に現れる
    ポップアップの下方に「FBX file」が加わっていれば成功です。


    ↓ 64bitOSではうまくインストールできない時があるようです。

    


 【ver.2009/07/09】 for Windows 32Bit
   ↓こちらからもダウンロード出来ます。

   ・XSI3.5用 NAME:86.zip pass:xsi35fbx
   ・XSI4.0用 NAME:67.zip pass:xsi40fbx
   ・XSI4.2用 NAME:68.zip pass:xsi42fbx
   ・XSI5.0用 NAME:69.zip pass:xsi50fbx

  【注意】
   XSI 5.11 + Windows 7 の組み合わせはNGです。
   起動はしますが、GUIで表示上の問題が発生し、
   耐え難い状況になることがあります。
   XSI 5.11までは当時のOS、Windows XPでご使用
   することをお勧めします。XSI5以降のFBXプラグイ
   ンは、配布されていませんので標準搭載となります。


 Maya6

  1. fbxmaya60.mll ファイルを
    C:\Program Files\Alias\Maya6.0\bin\plug-ins
    にコピーします。

  2. Mayaを起動し、Windowメニュー →
    Setting/Preferences → Plug-in Manager
    を選択してプラグイン・マネージャーを開きます。

  3. ウィンドゥ内から「fbxmaya60.mll」という名の項目を探し、
    Loaded と autoload にチェックを入れます。

  4. Fileメニュー→Import を選択し、Files of type の選択項目に
    「Fbx(*.*)」が加わっていれば成功です。


 【ver.2009/07/09】 for Windows 32Bit
   ↓こちらからもダウンロード出来ます。

   ・maya5.0用 NAME:87.zip pass:maya50
   ・maya6.5用 NAME:70.zip pass:maya65
   ・maya7.0用 NAME:71.zip pass:maya70
   ・maya8.0用 NAME:72.zip pass:maya80
   ・maya8.5用 NAME:73.zip pass:maya85
   ・maya2008-32bit用 NAME:74.zip pass:maya2008
   ・maya2008-64bit用 NAME:208.zip pass:maya200864
   ・maya2009-32bit用 NAME:75.zip pass:maya2009
   ・maya2009-64bit用 NAME:209.zip pass:maya200964
   ・maya2010-32bit用 NAME:210.zip pass:maya201032
   ・maya2010-64bit用 NAME:211.zip pass:maya201064
   ・maya2011-32bit用 NAME:212.zip pass:maya201132
   ・maya2011-64bit用 NAME:207.zip pass:maya201164


 LightWave8

  1. fbxlw80.p ファイルを
    C:\LightWave_8\Plugins\input-output にコピーし、
    LightWave(レイアウトの方)を起動します。

  2. ユーティリティ→プラグイン→プラグイン追加
    を選択してブラウザを開き、
    追加するプラグインを選択してOKを押します。

  3. 編集→メニュー編集 を選ぶと、
    左側のコマンド欄の「Plug-ins」に
    「Export to FBX」、「Import from FBX」、
    「Merge with FBX」が登録されているので、
    「Export to FBX」を右欄のファイル→出力にドラッグし、
    「Import from FBX」、「Merge with FBX」を
    ファイル→入力にドラッグして登録します。


 【ver.2009/07/09】 for Windows 32Bit
   ↓こちらからもダウンロード出来ます。

   ・Lightwave7.5用 NAME:76.zip pass:lw75fbx
   ・Lightwave8.0用 NAME:77.zip pass:lw80fbx
   ・Lightwave8.2用 NAME:78.zip pass:lw82fbx


 3ds Max8

  1. fbx200611_3dsmax80_win_enu.exe ファイルを起動します。

  2. 手順に従い進んで行きます。
    Where do you want to copy the plugin documentation?
    (FBXをどこにコピーしますか?)の問いは、
    そのままの流れで
    「C:\Program Files\Autodesk\FBX\FbxPlugins\2006.11\Max80」
    として「Install」ボタンを押します。

  3. その後Maxを立ち上げて、ファイル>書き出しで
    「ファイルの種類」の欄を確認すると、
    「Autodesk (*.FBX,*.DAE)」という項目が追加されています。


 【ver.2009/07/09】 for Windows 32Bit
   ↓こちらからもダウンロード出来ます。

   ・3dsmax5.0用 NAME:79.zip pass:max50
   ・3dsmax6.0用 NAME:80.zip pass:max60
   ・3dsmax7.0用 NAME:81.zip pass:max70
   ・3dsmax8.0用 NAME:82.zip pass:max80
   ・3dsmax9.0用 NAME:83.zip pass:max90
   ・3dsmax2008-32bit用 NAME:84.zip pass:max2008
   ・3dsmax2008-64bit用 NAME:201.zip pass:max200864
   ・3dsmax2009-32bit用 NAME:85.zip pass:max2009
   ・3dsmax2009-64bit用 NAME:203.zip pass:max200964
   ・3dsmax2010-32bit用 NAME:88.zip pass:max2010
   ・3dsmax2010-64bit用 NAME:204.zip pass:max201064
   ・3dsmax2011-32bit用 NAME:206.zip pass:max201132
   ・3dsmax2011-64bit用 NAME:207.zip pass:max201164



   -----------------------------------------------------------------------------------------------------------------

   ※エラーについて

    

    FBXを使ったインポート・エクスポート時には、エラーが発生する場合があります。
     実際はメッセージはワーニングですので、致命的ではなく注意を促すレベルのものとなります。
     あまり気にされる必要は無いかと思いますが、内容的には、ポリゴンの対角線の方向が特定できない...
     とありますので、歪んだポリゴンなどが存在するとこのようなワーニングが出るかと思います。
     3dsmaxでBipedでスキニングしてアニメーションを行われているようなケースではほとんどの場合、
     そのまま問題なく出力されてしまうかと思います。

     

     3dsmaxで設定したBipedアニメーションデータを、FBX書き出しでMayaに読み込んだ場合、フレームが不足
     している時があります。これはMaya側のfpsの設定の問題となります。Maya側のDefaultは24fpsとなっており
     ますので、30fpsに設定し直すと、20フレームまで再現できるようになります。

     

   -----------------------------------------------------------------------------------------------------------------


3.アプリケーションごとの使い方


 XSI5.11

 エクスポート

  1.[ファイル]>[書き出し]>[FBX]を選択します。
   

  2.ブラウザからエクスポートしたいファイルを指定します。

  3.FBX Exporter ウィンドゥが現れるので、オプションを指定し、最後にOKボタンを押します。



 インポート

  1.[ファイル]>[読み込み]>[FBX]を選択します。
   

  2.ブラウザからインポートしたいファイルを指定して開きます。

  3.FBX Importer ウィンドゥが現れるので、オプションを指定し、最後にOKボタンを押します。



 Maya8.5

 エクスポート

  1.[ファイル]>[エクスポート]右のオプションボタンを選択し、ファイルタイプとしてFBXを選択します。
   シーン内の全てのオブジェクトがエクスポートの対象になります。
   [ファイル]>[すべてエクスポート] を選択しても結果は同じです。
   
   

  2.ファイルの保存先を指定し、ファイル名を入力してOKを押します。

  3.FBX Exporter ウィンドゥが現れるので、オプションを指定し、
   最後に Exportボタンを押します。



 インポート

  1.[ファイル]>[インポート]右のオプションボタンを選択し、ファイルタイプとしてFBXを選択します。

   
   

  2.インポートしたいファイルを指定して開きます。

  3.FBX Importer ウィンドゥが現れるので、オプションを指定し、最後に Importボタンを押します。

   

  ※テクスチャーが貼られていない時
   lightwaveでテクスチャーを設定してFBX出力したファイルを、Mayaのインポートから
   読み込むとテクスチャーが貼られていない場合があります。もし3dsmaxがある場合は、
   面倒ですが、一度3dsmaxにFBXを読み込んで、シーンを保存し、3dsmaxからFBXを書き出し
   して、それをMayaでインポートして下さい。これでテクスチャーが維持されます。


 LightWave8

 エクスポート

  1.ファイル→エクスポート→Export to FBX を選択すると、
   FBX Exporter ウィンドゥが現れるので、オプションを指定します。

  2.右上の三角ボタンを押すと、ファイルの保存先を指定できます。
   その右隣の欄にファイル名を入力してOKを押します。
   ※注意!!「デスクトップ」など、日本語を含んだファイルパスで出力すると失敗します。



 インポート

  1.ファイル→インポート→Import from FBX を選択すると、FBX Importer
   ウィンドゥが現れるので、オプションを指定します。

  2.右上の三角ボタンを押すと、ファイルの保存先を指定できます。
   その右隣の欄にファイル名を入力してOKを押します。



 3dsMax2010

 エクスポート


  1.[ファイル]→[書き出し]>[選択を書き出し]>[ファイルの種類]をFBXにして実行します。

  2.出力時にオプション画面が表示されますので、順番に見ていって、必要箇所にチェックして下さい。

   ----------------------------------------------

  [エラー表示となる場合]
      FBX import/export warning!

       warning and errors ...
       warning:turned edge(1)

      description...
       The plug-in does not retain the orientation
       of Diagonals on Editable Poly objects.
       (FBX)Plug-inが編集可能ポリゴンの「斜め線(?)」を保持できません。

       This could have an impact on modified UV coordinates.
       Refer to the Online Help for more information.
       The following objects are affected: [-オブジェクト名]
       これは変更されたUV座標に影響を与えるかもしれません。
       オンラインヘルプをご参照ください。
       以下のものが影響を受けます:[-オブジェクト名]


       log file: C:\Document〜1\username〜1\locals〜1\temp\max2010.log



   [-オブジェクト名]に問題があるため、FBX Plug-inが解釈(あるいは書き出し)が
   できない状態と思われます。「orientation of Diagonals」は「斜め線」「対角線」
   などを意味するようですので、推定ですが多角形ポリゴンの三角形化エッジの事
   ではないでしょうか。[-オブジェクト名]の一部のポリゴンで、FBX Plug-inが扱え
   ない状態の三角形化エッジがあるのかもしれません。

   三角形化を編集するには、[ポリゴン]サブオブジェクト>[ポリゴンを編集]ロール
   アウト>[三角形化を編集]ボタンを押し、対角線上両端の頂点部分をクリックします。
   あるいはすぐ下の[エッジ回転]ボタンを押してもいいでしょう。
   残念ながら、どのポリゴンの三角形化エッジに問題があるかは分かりません。

   このエラーが出た状態で、*.fbxファイルは書き出されていないのでしょうか。
   もし書き出されているのであれば、不正なUV情報になっているかもしれませんが、
   ジオメトリ形状は書き出されているかもしれません。

   メッセージに出ているログファイルの記述を確認してみてください。
   ここにログファイルが無ければFBXプラグインが作成していないこと
   になります。問題ありません。↓
   C:\Documents and Settings\user name\Local Settings\Temp\max2010.log

   何が問題かを切り分ける手段として、簡単なオブジェクトと標準マテリアル、
   モディファイヤリストは全部集約して、データの受け渡しを試してください。

   ----------------------------------------------

  [Mayaでインポートすると四角形ポリゴンが三角形に変換されてしまうエラー]

   オブジェクトが「編集可能メッシュ」になっていることが原因の時もあります。
   そうならないためには「編集可能ポリゴン」にしていただく必要がありますが、
   キャラクターにスキンが適用されている場合、編集可能ポリゴンにしてから、
   スキンを適用しなおす必要があります。
   「ポリゴンに変換」モディファイアを使う方法もありますが、スキンがかかっている
   キャラクターには無理です。スキン情報を保存し、再度適用可能であれば試して下さい。
   ただ、元のモデルのエッジの向きとか不統一であれば、変換時にワーニングがでたり、
   Mayaへインポート後のシェーディングがおかしかったりしますので、現状のモデルに
   計算しづらそうな箇所が無いか、無理のある形状が無いか等、調べる必要があります。
    

   ----------------------------------------------

  [Mayaでインポートすると巨大化されてしまう]

   FBX-Pluginで、maxからの出力時にオプションで単位(スケール係数)があります。
   (デフォルトではMaxはインチ単位、Mayaはcmになります。)
   Mayaでも同じ大きさにしたいのであれば、Max上で単位を変更するのがよいです。

   3dsmaxでFBX書き出しする前に、[カスタマイズ]→[単位設定]→[システム単位設定]で、
   1単位がDefaultでは[インチ]になっているので、[ミリメートル]に変えて下さい。
   

   Mayaで読み込んだ後にサイズ調整を行うのであれば、ロケータやグループなどを
   作成し、すべてのオブジェクトの親として設定し、スケールをかけて調整するような
   方法となっていきます。

   ----------------------------------------------

  [Mayaでインポートすると全フレームにセーブキーが打たれてしまう]

   3dsmaxからモーション付きのFBXを書き出して、Mayaに読み込んだ時、全フレームにセーブキーが
   打たれた状態になってしまいます。maxでは全ての骨に対して、0,5,10,15,20,と、5フレームおきに
   しかキーは打っている状態で、それをそのまま再現したいのですが、現状ではこれを回避するのは
   難しいようです。Maya〜Max〜Softimage〜Motionbuilderの、ver.2012では、これらのアプリ間で
   カーブの補間形式が統一されましたので、ワンクリックでMotionbuilderやSoftimgeで、前述のような
   キーフレームのみのやり取りできます。ただしこの場合でもMax ←→ Maya 間は直接の送信が
   できないので、Motionbuilderなどを通せば、実現はできます。Autodesk製品2012バージョンでは、
   これらのFcurveのUIは統一されていますので、同じ設定にしている場合は、ワンクリック時(コンバ
   ート時)に余分なキーが作成されないはずです。

   参考: Maya2012新機能の紹介,13頁↓
        http://images.autodesk.com/adsk/files/whatsnewmaya2012_jp.pdf



 インポート

  1.[ファイル]→[読み込み]>[ファイルの種類]をFBXにして実行します。


4.データコンバート検証

書き出し → 読み込み ポリゴン
ジオメトリ
マテリアル情報
(基本的にPhongで検証)
ローカルマテリアル スケール ワールド軸 オブジェクトのグループ、または階層 レイヤー ポリゴンのグループ(選択セット) ユーザー法線 頂点カラー UV
テクスチャパス
骨のみ ウェイト クラスタ シェイプ (注3) コンストレイント エクスプレッション
 XSI4.2 → Maya6
穴開き、三角、四角、多角形、全てOK。

カラー、アンビエント、スペキュラ、スペキュラ減衰、透明カラーはそのまま再現された。

XSIからの出力時にオプションでスケーリング可能だが、ルートにFbx_Rootという名のヌルが付いてしまう。

XSIのグループは出力されないが、オブジェクトの階層でヌルを使えばOK。
×
XSIのレイヤーは出力されなかった。
×

XSIのハードエッジ情報は再現されなかったが、頂点の結合を解除するとこでハードエッジ表現は可能。

インポート直後に Display → Custom Polygon Display Options で Color Material Channel を None に切り替えて Apply すると再現される。

テクスチャのパスを渡す方法と、ファイルに埋め込む方法がある。

XSIからエクスポート時、スケールは1にしておいた方がいい。

XSIからエクスポート時、スケールは1にしておいた方がいい。
×
XSIのクラスタは出力されなかった。
× ×
 XSI4.2 → LW8
穴開き、三角、四角、多角形、全てOK。

カラー、スペキュラ、スペキュラ減衰、透明カラーはそのまま再現された。

XSIからの出力時にオプションでスケーリング可能だが、これはレイアウトだけの話で、予めXSI側でオブジェクトのセンターのスケールを0.01にしておけば正確に読まれる。

インポート時にモデルが寝てしまう問題があるが、回避可能。

全てFbx_Rootの下に置かれてしまうが、予め予めXSI側で Fbx_Rootという名のヌル(RotX -90 , RotY 90 , RotZ 0)を全ての親にしておくと、無事に読まれる。
階層もOK。
×
XSIのレイヤーは再現されなかった。
×

XSIのハードエッジ情報は再現されなかったが、頂点の結合を解除するとこでハードエッジ表現は可能(注2)。
×
× × ×
XSIのクラスタは出力されなかった。
× ×
 XSI4.2 →XSI4.2
穴開き、三角、四角、多角形、全てOK。

カラー、アンビエント、スペキュラ、スペキュラ減衰、透明カラー、反射カラーはそのまま再現された。

入出力時にオプションでスケーリング可能。

XSIのグループは出力されないが、オブジェクトの階層でヌルを使えばOK。
階層もOK。
×
XSIのレイヤーは再現されなかった。
×

XSIのハードエッジ情報は再現されなかったが、頂点の結合を解除するとこでハードエッジ表現は可能。


テクスチャのパスを渡す方法と、ファイルに埋め込む方法がある。

XSIからエクスポート時、スケールは1にしておいた方がいい。 Keep XSI Effectors もオフにする。

XSIからエクスポート時、スケールは1にしておいた方がいい。 Keep XSI Effectors もオフにする。
×
XSIのクラスタは出力されなかった。
× ×
 Maya6 → XSI4.2
穴開き、三角、四角、多角形、全てOK。

カラー、アンビエント、スペキュラ、スペキュラ減衰、透明カラーはそのまま再現された。

XSIへの読み込み時にオプションでスケーリング可能。

グループは無事に読み込まれるが、親がロケータに変わる。
階層はOK。
×
Mayaのレイヤーは再現されなかった。
×
Mayaの setは出力されなかった。

Mayaの法線情報は再現されなかったが、頂点の結合を解除するとこでハードエッジ表現は可能(注2)。

テクスチャのパスを渡す方法と、ファイルに埋め込む方法がある。テクスチャが無いとUVは読み込まれないので注意!

インポートオプションで、骨をヌルで読み込むかジョイントで読み込むかを選択できる。後者の場合、IKは自動的に適用され、末端の骨がエフェクタになる。

骨をヌルとしてインポートする場合は問題なし。そうでない場合は、一部の骨に対するウェイトが丸ごと欠ける事がある。

クラスタのハンドルにキーを打っておかないと、ワールド原点に移動されて形がおかしくなる。

ターゲットオブジェクトは残したままにしておき、タイムラインを開始フレームに合わせないといけない。
× ×
 Maya6 → LW8
穴開き、三角、四角、多角形、全てOK。

カラー、スペキュラ、スペキュラ減衰、透明カラーはそのまま再現された。

読み込み時のオプションは無いが、メートル単位で正しく読み込まれた。

インポート時にモデルが寝てしまう問題があるが、回避可能。

グループは読み込まれるが、全てFbx_Rootの下に置かれてしまう。予めMaya側で Fbx_Rootという名のロケータ(RotX -90 , RotY 90 , RotZ 0)を全ての親にしておくと、無事に読まれる。
階層もOK。
×
Mayaのレイヤーは再現されなかった。
×
Mayaの setは出力されなかった。

Mayaの法線情報は再現されなかったが、頂点の結合を解除するとこでハードエッジ表現は可能。
× × × ×
Mayaのクラスタは出力されなかった。

ターゲットオブジェクトは残したままにしておき、タイムラインを開始フレームに合わせないといけない。
× ×
 Maya6 → Maya6
穴開き、三角、四角、多角形、全てOK。

カラー、アンビエント、スペキュラ、スペキュラ減衰、透明カラーはそのまま再現された。

出力時のスケールで読み込まれる。

グループは無事に読み込まれるが、親がロケータに変わる。階層はOK。
×
Mayaのレイヤーは再現されなかった。
×
Mayaの setは出力されなかった。

インポート直後は頂点の連結が全て外れているので、MergeVertex を行う必要があるが、法線情報は保たれている。

インポート直後に Display → Custom Polygon Display Options で Color Material Channel を None に切り替えて Apply すると再現される。

テクスチャのパスを渡す方法と、ファイルに埋め込む方法がある。

骨の階層、アトリビュートなど、ほぼ再現できた。

ウェイト値に少しゴミが入ってしまう。(スムースバインド)

注意:クラスタのハンドルはワールド原点に移動されてしまう。

ターゲットオブジェクトは残したままにしておき、タイムラインを開始フレームに合わせないといけない。
× ×
 LW8 → XSI4.2
穴開き、三角、四角、多角形、全てOK。

色、反射光、光沢、透明度、鏡面反射光は再現された。

XSIへの読み込み時にオプションでスケーリング可能。

グループは読み込まれるが、全てFbx_Rootの下に置かれてしまう。階層はOK。

LWの各レイヤーは、複数のオブジェクトに分けられる。表示をオフにしたものも出力される。
×
LWの part は出力されなかった。

スムースしきい値は再現されない(注2)。
×
LWの 頂点カラーは出力されなかった。

テクスチャで使用されているUVしか出力されないので注意。

骨に回転値が入ってしまうので、いちいちリセットする必要がある。
× × ×
 LW8 → Maya6
穴開き、三角、四角、多角形、全てOK。

色、反射光、光沢、透明度、鏡面反射光はほぼ再現された(注:拡散レベルは100%にしておく)。

読み込み時のオプションは無いが、メートル単位で正しく読み込まれた。

グループは読み込まれるが、全てFbx_Rootの下に置かれてしまう。階層はOK。

LWの各レイヤーは、複数のオブジェクトに分けられる。表示をオフにしたものも出力される。
×
LWの part は出力されなかった。

スムースしきい値は再現されない(注2)。
×
LWの 頂点カラーは出力されなかった。

テクスチャで使用されているUVしか出力されないので注意。

×
× ×
 LW8 → LW8
穴開き、三角、四角、多角形、全てOK。

色、反射光、光沢、透明度、鏡面反射光はほぼ再現された(注:拡散レベルは100%にしておく)。

読み込み時のオプションは無いが、メートル単位で正しく読み込まれた。

インポート時にモデルが寝てしまう問題があるが、回避可能。

グループ(LWでは階層と同じ)は同じように読み込まれる。

LWの各レイヤーは再現された。
×
LWの part は出力されなかった。

スムースしきい値は再現されない(注2)。
×
LWの 頂点カラーは出力されなかった。

テクスチャで使用されているUVしか戻せないので注意。
× × ×
 書き出し → 読み込み ポリゴン
ジオメトリ
マテリアル情報
(基本的にPhongで検証)
ローカルマテリアル スケール ワールド軸 オブジェクトのグループ、または階層 レイヤー ポリゴンのグループ(選択セット) ユーザー法線 頂点カラー UV
テクスチャパス
骨のみ ウェイト クラスタ シェイプ コンストレイント エクスプレッション

    注1:XSIでの単位はSIユニットと呼ばれ、他ソフトで採用されているメートル法とは違う。
    注2:LightWaveでは、法線を頂点&面単位で編集する機能は無い。エッジの概念も
        無いので、ハードエッジは頂点の接続を解除して表現する。

    注3:シェイプはソフトごとに呼び名が異なる。XSIはシェイプでいいが、Mayaはブレンド
        シェイプ、LightWaveではモーフになる。





 ・全ソフトを通して確実に伝えられる情報は?

    ・ポリゴンジオメトリ情報
    ・マテリアル情報
     (カラー、スペキュラ、スペキュラ減衰値、透明カラーの4つは確実)、
     および、ローカルマテリアル情報
    ・UV&テクスチャへのパス
    ・シェイプ情報


 ・相性の良い組み合わせは?

    ・Maya と XSI の組み合わせは、上記の情報に加え、頂点カラーと骨、
     ウェイト情報が安心して入出力できる。
     特に、LightWave独自のワールド座標系と骨の設定に煩わされる事
     が無いのが良い。

 ・LW向でモデルを読み込むと寝てしまうが、これは回避できるか?
    ・XSI4.2 → LW8
           予めXSI側でオブジェクトのセンターにRotX -90 , RotY 90 , RotZ 0を
           適用しておけば無事に読まれる。

    ・Maya6 → LW8
           予めMaya側で Fbx_Rootという名のロケータ(RotX -90 , RotY 90 ,
           RotZ 0)を全ての親にしておくと、無事に読まれる。


 ・Maya から XSI 向けにボーンをインポートする時の注意

    ●IK付きでインポートするとき
       ・XSIでインポートするときに「Import Skeltons Element as Null」の
        チェックをオフにしておく。
       ・骨構造のルートはヌルを一つ置く。
       ・骨はIK単位でバラバラにしておく。例えば、足の骨ならももの
        付け根から足首までで、足首からつま先までの骨は別階層
        (ルート直下)にしておく。
       ・末端の骨は自動的にエフェクタに変換される。(オプションに
        よってヌルにもできる。)
       ・エフェクタに子供を付けてはいけない。(異常なスケールがかかる)
       ・バラバラにした各骨階層は、インポート後にXSIでセットアップ
        する必要がある。
         (エフェクタの下に他のジョイントのルートをぶら下げる等)
       ・骨のアトリビュート JointOrient、Rotate Axis の値は無効なので、
        ゼロを入れておく。

    ●ヌルでインポートするとき
       ・XSIでインポートするときに「Import Skeltons Element as Null」の
        チェックをオンにしておく。
       ・階層はそのまま読み込まれるので、特に何もしなくてよい。
       ・骨のアトリビュート JointOrient、Rotate Axis の値は無効なので、
        ゼロを入れておく。
         ローカルの回転値もゼロにしておく。
       ・回転制限フラグ設定は保持されるので、必要に応じて切り替える。

       「デスクトップ」等、日本語を含んだファイルパスでの入出力は
        なるべく避けて下さい。


5.まとめ

 長所 ・対応するソフトの数が多く、プラグインが無償で提供されている。
     ・OBJフォーマットとは異なり、骨&スキンウェイト情報も入出力できる。
     ・プラグイン、SDKが無償で提供されている。
     ・バイナリデータなので、ファイルサイズが小さい。

 短所 ・テキストデータで出力できないので、データの直接チェック&編集は容易でない。
     ・LightWaveでの入出力は、ModelerではなくてLayoutを通して行うので、
      モデルデザイナーには不便。
     ・各ソフト独自の法線情報は伝わらないので、従来どおりに頂点を切り離して
      ハードエッジを表現する必要がある。

 FBXプラグインはまだ発展途上であり、これからも機能は向上していくと思われますが、
 現時点でも、MayaとXSIを併用してキャラクタセットアップを行っているプロジェクトで
 は大いに役立つと思われます。また、Lightwaveとの組み合わせでは、マテリアル
 データが正確に入出力できる点が大きいと思います。
 (OBJ形式のインポートでは、マテリアル情報が全て欠落していました。)

以上で検証報告を終わります。(初回更新日:2005年6月28日)


top
inserted by FC2 system