FBXインポータ (13.2)
FBXインポータは、さまざまなアプリケーション間でのデータ交換に便利なファイルフォーマットである、オートデスク社が開発したFBXフォーマットをShade3Dに読み込むプラグインです。
●「FBXインポート」ダイアログボックス
「ファイル」メニューの「インポート」から「FBX...」を選択すると表示されるダイアログボックスです。
FBXファイルを読み込む際のオプションを設定することができます。
- 「座標変換」グループ
-
- 「スケール」テキストボックス
- 形状を読み込む際のサイズの倍率を指定します。
- 「反転」ボタン
- X/Y/Zボタンを押すと、読み込む形状の指定の軸での座標値を反転させます。
- 「交換」ボタン
- X-Y/Y-Z/Z-Xボタンを押すと、読み込む形状のそれぞれの軸を反転するように座標値を変換します。
- 「リセット」ボタン
- 「スケール」「反転」「交換」での座標変換での変更を元に戻します。
- 「座標系」グループ
-
- 「シーンの単位情報を使用」チェックボックス
-
FBXが持つシーンの単位情報を読み込む場合はオンにします。
オンにすると、シーンの単位情報を読み込み、座標値はShade3Dでのミリメートル(mm)に変換されます。
オフにすると、シーンの単位情報は無効となり、常にFBXでのデフォルトのセンチメートル(cm)として扱われます。この場合はShade3Dのミリメートル単位にあわせるように座標値は10倍に変換されます。
- 「ジオメトリ」グループ
-
- 「マイナススケールによる面反転」チェックボックス
-
インポート時にパートやジョイントの変換行列でスケールのマイナス値があるときは、 FBXによってはポリゴンメッシュの面が反転している場合があります。
オンにすると、FBXインポート時にマイナススケールがついたパートやジョイントの「面反転」チェックボックスをオンにします。
オフにすると、この処理は行いません。
Unity/QuickTime/3ds Max/Maya用のFBXを読み込む場合はオンに、3DXChange/iClone用のFBXを読み込む場合はオフにします。
- 「頂点法線を入力」チェックボックス
-
ポリゴンメッシュに面ごとの頂点法線情報が存在する場合は、法線を読み込みます。
- 「表面材質」グループ
-
- 「外部参照イメージ」ポップアップメニュー
-
テクスチャイメージの読み込み方法を「シーンに取り込み」「外部参照を維持」から選択します。
FBXファイル自身にテクスチャイメージが埋め込まれていない場合は、 テクスチャイメージはすべて参照の形でFBXファイルに記載されています。
Shade3Dのシーンにイメージを取り込む場合は「シーンに取り込み」を選択します。
外部参照としてイメージをシーンから外に出しておく場合は「外部参照を維持」を選択します。
- 「スキンとスケルトン」グループ
-
- 「スキンデータをインポート」チェックボックス
-
ポリゴンメッシュ形状にスキンとしての頂点ウエイト値を持つ場合はそれを読み込みます。
なお、スキンは「頂点ブレンド」方式で格納されます。
- 「入力対象オプション」グループ
- FBXファイルから読み込む対象(カメラ/光源/モーション)を選択します。読み込む対象のチェックボックスをオンにします。
●FBXインポータの読み込むデータについて
◆インポートできる形状
FBX構造ではシーンを構成する要素として、Skeleton/Null/Marker/Mesh/Nurbs/Patch/Camera/Lightが存在します。
FBXインポータでは、読み込み時のルート形状はパートになり、FBXファイル名がパート名となります。
FBXでの形状 | Shade3Dでの形状 | 備考 |
---|---|---|
Skeleton | ボーンジョイント | |
Null | パート | |
Marker | 未対応 | |
Mesh | ポリゴンメッシュ | |
Nurbs/Patch | ポリゴンメッシュ | ポリゴンメッシュに変換されて読み込まれます |
Camera | オブジェクトカメラ | 「入力対象オプション」で「カメラ」をオンにすると読み込まれます |
Light | 点光源、スポットライト、平行光源、無限遠光源 | 「入力対象オプション」で「光源」をオンにすると読み込まれます |
FBX構造では、FBXファイルとは別ファイル(拡張子mc)としてVertex Cacheというものを持つことができます。
このVertex Cacheの読み込みは対応していません。
◆ポリゴンメッシュ形状の読み込み
ポリゴンメッシュの読み込みは、以下に対応しています。
- 多角形ポリゴンの読み込み
- 複数UVの読み込み (最大8層まで)
- 1つのポリゴンメッシュに複数のマテリアルが割り当てられている場合は、フェイスグループとして表面材質を割り当て
◆ポリゴンメッシュ同士の階層構造の読み込み
FBXでは、ポリゴンメッシュだけで階層構造を作ることができます。
このような構成の場合は、Shade3Dにインポートする際に「ポリゴンメッシュ名_part」のパートを作成し、
その中にポリゴンメッシュを入れるようにすることで、階層表現を行っています。
◆カメラの読み込み
「FBXインポート」ダイアログボックスの「入力対象オプション」グループで「カメラ」チェックボックスをオンにしてFBXをインポートすると、
FBXで保持されているカメラがオブジェクトカメラとして読み込まれます。
なお、カメラ自身のアニメーションの読み込みには対応していません。
◆光源の読み込み
「FBXインポート」ダイアログボックスの「入力対象オプション」グループで、「光源」チェックボックスをオンにしてFBXをインポートすると、
FBXでの光源のパラメータより 無限遠光源/スポットライト/点光源/平行光源としてシーンに光源が読み込まれます。
FBXでの光源の形状名で「shade_distantlight」が含まれている場合は、無限遠光源として読み込まれます。
なお、光源自身のアニメーションの読み込みには対応していません。
◆イメージの読み込み
FBX内に保持されているイメージは、形状から参照されていないものも含めてマスターイメージとしてシーンに読み込まれます。
イメージのファイル名がShade3Dでのマスターイメージ名となります。
また、「FBXインポート」ダイアログボックスの「外部参照イメージ」ポップアップメニューで「外部参照を維持」を選択してインポートした場合は、画像ファイルはすべて外部参照となります。
イメージの検索は、以下の順番で行われます。
- FBXが持つテクスチャの絶対パスから検索
- FBXが持つテクスチャの相対パスから検索(基準はFBXファイルのある位置)
- FBXファイルと同じフォルダから検索
- FBXファイルと同じフォルダ上の「FBXファイル名.fbm」フォルダ内から検索
イメージファイルが見つからなかった場合は、「参照ファイルが見つかりません」ダイアログボックスが表示されます。
参照ファイルが見つかりません |
---|
対象のイメージファイルを選択し「確認して継続」ボタンを押すと、指定したイメージが再割り当てされます。
以降は、イメージファイルが見つからなかった際に、指定したフォルダ内に検索イメージが存在する場合は自動で読み込まれます。
「無視」ボタンを押すと、イメージの再割り当ては行われません。「すべて無視」ボタンを押すと、以降のイメージファイルが検索できない場合にイメージの再割り当ては行われません。
イメージファイルが見つからなかった場合は、メッセージウィンドウで以下のように FBX内のイメージ参照先の相対パス名が表示されます。
ファイルが見つかりません. - Textures/xxx.png
また、イメージファイルが指定のパスに存在していても、Shade3Dが読み込めないファイルフォーマットである場合(pictなど)は、8x8の白色のイメージとなります。
◆マテリアルの読み込み
FBX内に保持されているマテリアル情報は、形状から参照されていないものも含めてマスターサーフェスとしてシーンに読み込まれます。
FBXでのマテリアル名がShade3Dでのマスターサーフェス名となります。
読み込めるマテリアルとしてのパラメータは以下のものがあります。
マッピングに関しては、それぞれの要素に対して1枚のイメージ画像が読み込まれます。
また、FBXが持つマッピング別のテクスチャのスケール要素(UとVを持つ)をShade3Dでのマッピングの左右反転/上下反転/反復として読み込みます。
テクスチャのスケール要素が(U, V) = (-2, 3)のときは、
Uがマイナス値であるので左右反転 On、
Vがプラス値であるので上下反転 Off、
反復は(2, 3)となります。小数点以下のスケール値である場合は、小数点以下は切り捨てとなります。
FBX内のテクスチャ変換機能としてはスケール以外に回転/オフセット要素もありますが、これについてはShade3Dには読み込まれません。
また、イメージをマッピングとして割り当てた場合は「スムーズ」チェックボックスは常にオンになります。
透明度をマッピング画像で指定する場合、Shade3Dでは画像が白に近いほど透明になりますが、FBXでは黒に近づくほど透明になります。
そのため、透明度マッピングをFBXからインポートする場合は、Shade3Dでのマッピングの色反転をオンにして、自動的に色を逆転させます。
◆アニメーションのインポート選択
FBXファイルはアニメーションのタイムラインを「Animation Stack」として複数持つことができます。
複数のAnimation Stackを持つFBXファイルをインポートした際は、「アニメーションの選択」ダイアログボックスが表示されます。
アニメーションの選択 |
---|
なお、アニメーション情報をインポートする場合は「FBXインポート」ダイアログボックスの「入力対象オプション」グループで「モーション」チェックボックスをオンにしてインポートします。
FBXの持つ複数のAnimation Stackから、指定した1タイムラインのアニメーションのみを読み込むことができます。
「FBXインポート」ダイアログボックスの「入力対象オプション」グループの「モーション」チェックボックスをオフにした場合は 「アニメーションの選択」ダイアログボックスは表示されません。
また、Animation Stackが1つしかない場合は「アニメーションの選択」ダイアログボックスは表示されず、 その1つのAnimation Stackがインポートされます。
◆アニメーションの読み込み
FBXでは、すべての形状が「移動」「回転」「拡大縮小」のモーションカーブを持つことができ、キーフレームを与えることによりアニメーションが行われます。
Shade3Dにインポートする場合は、以下の2つのパターンで読み込まれます。
- 「Skeleton」をボーンとして読み込み
FBXでの「Skeleton」は、Shade3Dのボーンジョイントとして読み込まれます。
このとき、アニメーションは「移動」「回転」情報がキーフレームとして使用されますが「拡大縮小」は使用されません。
- 「Mesh」にアニメーション情報を持つ場合は、ボールジョイントの中にポリゴンメッシュを格納
FBXではポリゴンメッシュである「Mesh」単体でもキーフレームアニメーションを行うことができます。
Shade3Dではポリゴンメッシュ単体がアニメーション情報を持つことができないため、間に「ポリゴンメッシュ形状名_center」という名前のボールジョイントを挟み、そのボールジョイントで「移動」「回転」のキーフレームアニメーションを行います。
◆メッセージウィンドウに表示される内容
FBXの読み込みが行われる際に、メッセージウィンドウでインポート情報が表示されます。
項目名 | 内容 |
---|---|
import | インポートしたfbxファイルのフルパス名 |
application name | FBXを保存したアプリケーション名 |
application vendor | FBXを保存したアプリケーションベンダー名 |
title | タイトル情報 |
subject | 主題情報 |
comment | コメント情報 |
author | 作者情報 |
keywords | キーワード情報 |
revision | バージョン情報 |
fbx version | FBXフォーマットのバージョン情報 |
shapes | 読み込んだポリゴンメッシュの数 |
materials | 読み込んだマテリアル(マスターサーフェス)の数 |
textures | 読み込んだテクスチャ(マスターイメージ)の数 |
cameras | 読み込んだカメラの数 |
lights | 読み込んだ光源の数 |
animation | 読み込んだanimation stack名 |
テクスチャイメージを読み込む際に参照先が存在しない場合は、
以下のようにFBXファイル内のテクスチャイメージの相対パスがメッセージウィンドウに表示されます。
ファイルが見つかりません. - Textures/xxx.png
●インポート時の注意事項
- FBXインポータでは、FBXフォーマット2012までの読み込みに対応しています。
- Mac App Store版のShade3D for UnityでのFBXインポータでは、FBXファイルでテクスチャイメージを埋め込まずに外部参照にしている場合は、テクスチャイメージの読み込みに失敗します。
この場合は「参照ファイルが見つかりません」ダイアログボックスが表示されます。テクスチャイメージごとにファイルを指定するようにしてください。