各形式は、意外と多くの設定項目があり、そして各形式で意外に項目がバラバラなので、設定内容を知ることは重要だ。
また、アセットインポート形式については
こちらの記事
に書いている。
ABC
ABC(Alembic)は、3Dモデルの形状やアニメーション、配置などを受け渡すためのファイル形式。特に、映画・映像制作で使われることが多く、Blenderなどで作った複雑なモデルやシミュレーション結果を、別のソフトへ「完成した形状のデータ」として渡す用途に向いている。
大量のジオメトリや、フレームごとに形状が変化するアニメーション、複雑なシミュレーション結果のやり取りが可能。
公式マニュアル
全般
| スケール | 書き出すときの大きさ。1ならBlenderのサイズをそのまま維持。 |
| 内容 | 選択物のみか可視のみかを設定できる。 |
シーン
| 開始フレーム | 書き出す開始フレーム。 |
| 終了 | 書き出す終了フレーム。 |
| トランスフォームサンプル数 | 位置・回転・スケールなどの変化を、1フレームあたり何回記録するか。1なら各フレーム1サンプル。 |
| ジオメトリ | メッシュ形状のサンプル数。1なら各フレーム1サンプル。 |
| シャッター開放 | モーションブラー用のサンプル範囲の開始。 |
| 閉鎖 | モーションブラー用のサンプル範囲の終了。 |
| インスタンスを使用 | Blenderのインスタンスを使うかどうか。 |
| カスタムプロパティ | Blenderオブジェクトに設定したカスタムプロパティも書き出す。 |
| 階層を平坦化 | オブジェクトの親子関係・階層構造を平坦化して書き出す。 |
| 設定 | レンダーだとシーンのレンダー設定を基準にして書き出す。 |
ジオメトリ
| UV座標 | UVマップを書き出す。テクスチャを使うなら基本的にON。 |
| UVをマージ | 複数のUV情報をAlembic側でまとめる。通常は特別な理由がなければOFFでよい。 |
| ノーマル | 頂点・面の法線情報を書き出す。UEなどで陰影を正しく再現したいなら基本ON。 |
| カラー属性 | 頂点カラーなどのカラー属性を書き出す。頂点カラーを使っていなければ不要。 |
| 生成座標 | Blenderの生成座標を書き出す。生成座標をテクスチャ座標などのマテリアルで使っている場合に必要。 |
| 面セット | スカルプトなどでの面セット情報を書き出す。 |
| カーブをメッシュ化 | Curveオブジェクトをメッシュとして書き出す。カーブをそのまま扱いたいならOFF。 |
| 細分化適用 | Subdivision Surfaceなどの細分化を適用して、細分化後のジオメトリを書き出す。ONにするとポリゴン数が増える可能性あり。 |
| スキーマを使用 | 「PolyMesh」スキーマではなく、「SubD」Alembicスキーマを使用してポリゴンメッシュを書き込む。これによりファイルを開くプログラムのインポートオプションが設定され、そのプログラム独自の非破壊的な細分化が適用される。 |
| 三角面化 | ゲームエンジンのGPUは最終的にはメッシュを三角形として処理するが、どうするか。 |
| 四角面分割方法 | 四角形を三角形にする場合、どの対角線で分割するか。 |
| ポリゴン | ポリゴンの書き出し品質に関する設定。高品質なら形状をより正確に保持する。 |
パーティクルシステム
| ヘアーをエクスポート | ヘアーを書き出す。 |
| パーティクルをエクスポート | パーティクルを書き出す。 |
USD
USD(Universal Scene Description)は、Pixarが開発した、3Dシーン全体を別の3DCGソフトへ受け渡すためのデータ形式。単なる「3Dモデルのファイル」というより、モデル・マテリアル・カメラ・ライト・アニメーション・オブジェクトの階層・配置・インスタンスなど、シーン全体の構造を記録することを重視しているのが特徴。
USDには
- .usd:USDファイル
- .usda:テキスト形式
- .usdc:バイナリ形式
- .usdz:パッケージ化された形式
公式マニュアル
全般
| ルートプリム | USDシーンの一番上に作られる親(ルート)の名前。rootなら、すべてのオブジェクトがその下に入る。 |
| 内容 | 選択物のみか、可視のみか、アニメーションを書き出すか。 |
| Blenderデータ | Blenderオブジェクトに設定したカスタムプロパティをUSDへ書き出す。 |
| 名前空間 | BlenderのカスタムプロパティなどをUSDのuserPropertiesとして保存。 |
| Blenderでの名前 | Blenderで付けているオブジェクト名・データ名をUSDでも使用する。 |
| Unicode有効 | 日本語などのUnicode文字を名前に使用できるようにする。 |
| ファイル参照 | テクスチャなど外部ファイルへのパスを相対パスで記録するかどうか。 |
| 座標軸を変換 | Blenderの座標系と、USD側の座標系の違いを考慮して変換する。 |
| Xformオペレーター | 保持するXform。移動,回転,スケールなど。 |
| 使用する設定 | Blenderのレンダー設定を基準にしてUSDを書き出すかどうか。 |
オブジェクトタイプ
| メッシュ | Blenderの通常の3Dモデルを書き出す。壁・柱・屋根・家具など。通常ON。 |
| 照明 | BlenderのライトをUSDへ書き出す。ポイントライト、エリアライト、スポットライトなど。 |
| カメラ設定 | Blenderのカメラを書き出す。カメラの位置・回転・焦点距離などを含む。 |
| カーブ | Blenderのカーブオブジェクトを書き出す。ベジェ曲線やパスなど。 |
| ポイントクラウド | 点の集合として構成された3Dデータを書き出す。スキャンデータなどで使用する。 |
| ボリューム | 煙・霧・雲などのボリュームデータを書き出す。 |
| ヘアー | BlenderのヘアーなどをUSDへ書き出す。 |
ジオメトリ
| UVマップ | メッシュのUV情報を書き出す。テクスチャを使うならON。 |
| UVマップをリネーム | BlenderのUVマップ名を、USD側で扱いやすい名前に変更して書き出すための設定。特別な理由がなければ基本そのままでOK。 |
| ノーマル | メッシュの法線情報を書き出す。陰影を正しく再現したいならON。 |
| メッシュの三角面化 | 四角形・多角形を三角形に分割して書き出す。通常はOFFでよい。 |
| 細分化 | Subdivision Surfaceなどの細分化情報をUSDへどう扱うか。 |
リギング
| シェイプキー | BlenderのShape Keyを書き出す。頂点を変形させて表情などを作るための情報。 |
| アーマチュア | BlenderのArmature(骨格)を書き出す。キャラクターなどのボーン構造をUSDへ渡す。 |
| 変形ボーンのみ | アーマチュアを書き出す際に、実際にメッシュの変形に使われるDeform Boneだけを書き出す。それ以外の制御用ボーンなどを除外する。 |
マテリアル
| USDプレビューサーフェスネットワーク | Blenderのマテリアルを、USD標準の UsdPreviewSurface 形式に変換して書き出す。UEなど他のソフトへ渡す際の基本的なマテリアル情報になる。 |
| MaterialXネットワーク | マテリアルをMaterialX形式のノードネットワークとして書き出す。対応ソフト間でマテリアルを共有するための仕組み。 |
| ワールドマテリアルを変換 | BlenderのWorld(環境・背景・HDRIなど)のマテリアル情報もUSDへ変換する。 |
| テクスチャをエクスポート | Blenderのマテリアルで使用している画像テクスチャを一緒に書き出す。 |
| テクスチャを上書き | 同名のテクスチャが既に存在する場合に、それを上書きする。 |
| USDZテクスチャダウンサンプリング | テクスチャの解像度を維持するかどうか。 |
実験的
| インスタンス化 | Blender内のインスタンス(同じオブジェクトなどを複数配置している状態)を書き出す。 |
OBJ
OBJ(Wavefront OBJ)とは、3Dモデルの形状を他の3DCGソフトへ受け渡すためのファイル形式。Wavefront Technologiesによって開発され、非常に多くの3DCGソフトで読み書きできる。
OBJは主に、頂点・面・UV座標・法線・マテリアルへの参照など、モデルそのものの情報を保存するために使われ、テクスチャ画像そのものは通常OBJには含まれず、OBJと一緒にMTLファイルや画像テクスチャを用意して、マテリアルや画像の情報を参照させる。
一方で、FBXやUSDと比べると機能はシンプルで、ボーン、リグ、複雑なアニメーション、カメラ、ライト、シーン階層、インスタンスなどを扱うのは苦手。
公式マニュアル
全般
| 選択物のみ | Blenderで現在選択しているオブジェクトだけを書き出すかどうか。 |
| スケール | OBJへ書き出す際の大きさの倍率。 |
| 前方の軸 | OBJを読み込むソフト側に合わせて、「前」をどの方向として扱うかを指定。 |
| 上向きの軸 | OBJを読み込むソフト側に合わせて、「上」をどの方向として扱うかを指定。 |
ジオメトリ
| UV座標 | UVマップを書き出す。テクスチャを使うならON。 |
| ノーマル | 法線情報を書き出す。陰影を維持したいならON。 |
| 色 | 頂点カラーなどの色情報を書き出す。使用していなければ不要。 |
| カーブをNURBSに | Blenderのカーブを、OBJのNURBSカーブとして書き出す。メッシュ化する設定ではない。 |
| メッシュの三角面化 | 面を三角形に分割して書き出す。通常はOFFでよい。 |
| モディファイアーを適用 | Subdivision、Mirror、Arrayなどのモディファイアを評価した最終形状を書き出す。 |
| プロパティ | モディファイアなどを評価するとき、ビューポート側の設定を基準にするかどうか。 |
グループ化
| オブジェクトグループ | Blenderのオブジェクト単位のグループ情報を書き出す。 |
| マテリアルグループ | 使用しているマテリアルごとのグループ情報を書き出す。 |
| 頂点グループ | Blenderの頂点グループ情報を書き出す。 |
| スムーズグループ | 面のスムージング状態をOBJのスムージンググループとして書き出す。 |
| スムーズグループビットフラグ | スムーズグループをビットフラグ形式で扱う設定。通常のUE用建築では気にしなくてよい。 |
マテリアル
| PBRエクステンション | OBJ自体は古い形式なので、通常のOBJにはPBRマテリアルを完全に記録する仕組みがないが、この設定を使うとOBJと一緒に使われるMTL側でよりPBR的な情報を扱えるようになる。ただしUEへ持っていく場合にBlenderの複雑なPBRマテリアルがそのまま完全移植されるわけではない。 |
| パスモード | テクスチャのファイルパスの参照方法。 |
アニメーション
| 開始フレーム | アニメーションを書き出す開始フレーム。 |
| 終了 | アニメーションを書き出す終了フレーム。 |
FBX
FBX(Filmbox)とは、3DCGソフトやゲームエンジンの間で、3Dモデルやアニメーションなどを受け渡すためのファイル形式。Autodeskが開発しており、Blender、Unreal Engine、Unityなど、多くの3Dソフトで利用されている。
FBXは、単なるメッシュの形状だけでなく、UV、法線、マテリアル情報、テクスチャへの参照、オブジェクトの位置・回転・スケール、カメラ、ライト、アーマチュア(ボーン)、アニメーションなど、比較的幅広い3Dデータを保存できる。
| パスモード | テクスチャなど外部ファイルへのパスを自動的に処理する。 |
| バッチモード | 複数のFBXファイルに分割して一括出力する機能。通常の書き出しではOFF。 |
内容
| 対象 | 選択したオブジェクトか、現在表示されているオブジェクトか、現在アクティブになっているコレクションを対象にするか。 |
| オブジェクトタイプ | 書き出すオブジェクトタイプ |
| カスタムプロパティ | Blenderで設定したカスタムプロパティを書き出す。 |
トランスフォーム
| スケール | FBXへ書き出す際の倍率。1.0なら基本的に1倍。 |
| スケールを適用 | オブジェクトのどのスケールを考慮してFBXへ書き出すか。 |
| 前方 | FBX側で「前」を-Zとして扱うか。 |
| 上 | FBX側で「上」をYとして扱うか。 |
| 単位を適用 | Blenderの単位設定を考慮してスケールを変換する。 |
| 空間の変換を使用 | BlenderとFBXの座標系の違いを変換する。 |
| トランスフォームを適用 | 位置・回転・スケールなどの変換を適用して書き出す。 |
ジオメトリ
| スムージング | メッシュのスムージング情報を法線情報としてFBXへ書き出すか。 |
| サブディビジョンサーフェスをエクスポート | Subdivision Surfaceの情報をFBXへ持っていく。 |
| モディファイアーを適用 | ミラー、配列などのモディファイアを評価した状態で書き出す。 |
| 孤立する辺 | 面を構成していない孤立した辺も書き出す。通常の建築メッシュでは不要。 |
| 三角面化 | 四角形・多角形を三角形にして書き出す。 |
| タンジェント空間 | 法線マップなどに必要なタンジェント情報を書き出す。 |
| 頂点カラー | 頂点カラーをsRGBとして扱うか。 |
| アクティブカラーを優先 | 複数のカラー属性がある場合、アクティブなものを優先する。 |
アーマチュア
| プライマリボーン軸 | ボーンの主要な向きをY軸として扱うか。 |
| セカンダリボーン軸 | ボーンの副次的な向きをX軸として扱うか。 |
| アーマチュアFBXノードタイプ | アーマチュアをFBX上でどのノードタイプとして扱うか。 |
| 変形ボーンのみ | 実際にメッシュを変形させるDeform Boneだけを書き出す。 |
| リーフボーン追加 | ボーンの末端に補助的な末端ボーンを追加する。 |
アニメーション
| 全ボーンのキー | すべてのボーンについてアニメーションキーを出力する。 |
| NLAストリップ | BlenderのNLA(Non-Linear Animation)にあるアニメーションを書き出す。 |
| 全アクション | Blenderに保存されているすべてのアクションを書き出す。 |
| 強制的に開始/終了キーを挿入 | アニメーションの開始・終了位置にキーを追加する。 |
| サンプリングレート | アニメーションを何フレームごとにサンプリングして書き出すか。 |
| 簡略化 | アニメーションの不要なキーを減らしてデータ量を小さくする。 |
glTF
| フォーマット | glbかglTFか。 |
| コピーライト(C) | ファイルに著作権情報を記録する。 |
| エクスポート設定を維持 | 使用したglTFエクスポート設定を保持する。 |
内容
| 選択したオブジェクト | 選択中のオブジェクトだけを書き出す。 |
| 可視オブジェクト | 表示されているオブジェクトだけを書き出す。 |
| レンダリング可能なオブジェクト | レンダリング対象になっているオブジェクトだけを書き出す。 |
| アクティブコレクション | 現在アクティブなコレクションを対象にする。 |
| アクティブシーン | 現在のシーンに含まれる対象を書き出す。 |
トランスフォーム
| +Yが上 | glTFではY軸が上方向になるため、その座標系に合わせてBlenderのデータを変換。 |
データ
シーングラフ
| ジオメトリノードインスタンス(実験的) | Geometry Nodesで作られたインスタンスを、glTFのインスタンスとして書き出すための実験的機能。 |
| GPUインスタンス | 同じメッシュをGPUインスタンスとして効率的に複数配置するための情報を書き出す。 |
| オブジェクト階層を平坦化 | Blenderの親子関係などのオブジェクト階層をなくして、平坦な構造にする。 |
| フルコレクション階層 | Blenderのコレクション構造を含めて書き出す。 |
メッシュ
| モディファイアーを適用 | モディファイアを適用した形状を書き出す。 |
| UV | UVマップを書き出す。テクスチャを使うならON。 |
| ノーマル | 法線を書き出す。 |
| タンジェント | 法線マップなどで使用するタンジェント情報を書き出す。 |
| 属性 | Blenderのメッシュ属性をglTFへ書き出す。 |
| 孤立する辺 | 面を構成していない孤立した辺を書き出す。 |
| 孤立ポイント | 面や辺に属さない孤立した頂点を書き出す。 |
| 共有アクセサ | 同じ頂点データなどをglTF内で共有してデータ量を抑えるための仕組み。 |
頂点カラー
| 頂点カラーを使用 | Blenderの頂点カラーをglTFのマテリアルなどで利用する。 |
| 全頂点カラーをエクスポート | 頂点カラーをすべて書き出す。 |
| アクティブ頂点カラーをエクスポート(マテリアルがない時) | マテリアルがない場合に、アクティブな頂点カラーを書き出す。 |
マテリアル
| マテリアル | Blenderのマテリアルを書き出すか。 |
| 画像 | テクスチャ画像の扱いを自動的に決めるか。 |
| 画質 | JPEGなどの圧縮画像を生成する場合の品質。数値が高いほど高画質・大容量になる。 |
| WebPを作成 | テクスチャをWebP形式に変換して書き出す。 |
| WebPの代替 | WebPに対応していない環境向けに代替画像を用意する。 |
未使用テクスチャと画像
| 未使用画像 | 現在のマテリアルなどから参照されていない画像も書き出す。 |
| 未使用テクスチャを維持 | 使用されていないテクスチャ情報を維持する。 |
シェイプキー
キャラクターの表情などで使う。静的な建物なら不要。
| シェイプキーの法線 | Shape Keyによる変形に伴う法線情報を書き出す。 |
| シェイプキーのタンジェント | Shape Keyによる変形に伴うタンジェント情報を書き出す。 |
シェイプキーを最適化
これはShape Keyのデータ量を減らすための設定。これもキャラクターなどのShape Keyを使う場合の設定で、建物では気にしなくてよい。
| 改善する場合はSparseAccessorを使用します | 変化している頂点だけを記録するSparse Accessorを使用してデータ量を削減する。 |
| データが空の場合、SparseAccessorをオミットします | 変化するデータがない場合はSparse Accessor自体を書き出さない。 |
アーマチュア
アーマチュア(骨格)をglTFへ書き出すための設定。| レスト位置を使用 | アーマチュアの現在のポーズではなく、Rest Position(初期骨格)を基準にして書き出す。 |
| 変形ボーンのみ | 実際にメッシュを変形させるDeform Boneだけを書き出す。 |
| アーマチュアオブジェクトを削除 | アーマチュアそのものをシーンのオブジェクトとして書き出さず、ボーン情報だけを利用する。 |
| ボーン階層を平坦化 | 親子関係を持ったボーン階層を平坦化する。 |
| リーフボーン追加 | 各ボーンの末端に補助的な末端ボーンを追加する。 |
スキニング
スキニングとは、ボーンがメッシュの頂点をどの程度動かすかを指定する仕組み。| ボーンの影響数 | 1つの頂点に対して、最大4本のボーンの影響を持たせるなど。ゲーム用モデルでは一般的な設定。 |
| 全ボーンの影響を含む | 4本などの上限を設けず、頂点に影響するすべてのボーン情報を書き出す。 |
照明
| 照明モード | glTFにライトを書き出す場合のライトの扱い方。 |
圧縮
| 圧縮レベル | 6などデータ圧縮の強さ。数字が大きいほど圧縮が強くなるタイプの設定。 |
| クオンタイズ位置 | 頂点位置の精度。14bitで位置を記録するなど。 |
| ノーマル | 法線の精度を10bitで記録するなど。 |
| テクスチャ座標 | UV座標を12bitで記録するなど。 |
| カラー | 頂点カラーを10bitで記録するなど。 |
| 汎用 | その他の属性データを12bitで記録するなど。 |
アニメーション
| アニメーションモード | BlenderのAction単位などでアニメーションを書き出す。 |
| 全オブジェクトアニメをベイク | オブジェクトのアニメーションをフレームごとのキーに変換して書き出す。 |
静止と範囲
| 現在のフレームを静止状態に使用 | 現在表示しているフレームの状態を、静止した状態として書き出す。 |
| 再生範囲に限定 | Blenderで設定した再生範囲内だけをアニメーションとして書き出す。 |
| 全glTFアニメーション開始を0に | glTF側のアニメーション開始フレームを0にそろえる。 |
| 負のフレーム | マイナスのフレームを含むアニメーションを、スライドして0以上になるように時間軸上で移動したりする。 |
アーマチュア
| 全アクションをエクスポート | Blenderに保存されている複数のArmature ActionをglTFへ書き出す。 |
| アクション間のポーズボーンをリセット | Actionを切り替える際、前のActionのボーンポーズが次のActionに残らないようにリセットする。 |
シェイプキーアニメーション
| アクション間のシェイプキーをリセット | 複数のActionを切り替えたときに、前のActionのShape Keyの値が次のActionに残らないようにする。 |
アニメーションサンプリング
| サンプリングレート | アニメーションを何フレーム間隔でサンプリングしてglTFへ書き出すかを指定する。 |
アニメーションポインター(実験的)
| TRS/ウェイトをアニメーションポインターに変換 | オブジェクトの「Translation(移動)・Rotation(回転)・Scale(スケール)・Weight(ウェイト)などのアニメーション情報を、glTFのAnimation Pointerという仕組みで扱うための実験的機能。 |
アニメーションを最適化
アニメーションのデータ量を減らすための設定。| サイズを最適化 | 不要なアニメーションデータを削減してファイルサイズを小さくする。 |
| ボーンチャンネルを強制最適化 | ボーンのアニメーションチャンネルを積極的に最適化する。 |
| オブジェクトチャンネルを強制最適化 | オブジェクトの移動・回転・スケールなどのアニメーションチャンネルを積極的に最適化する。 |
| 他のオブジェクトのビュー表示無効 | アニメーションの最適化処理時に、関係のないオブジェクトの表示を無効にして処理する。 |
追加アニメーション
| 追加アニメーションを用意 | 通常のglTF書き出しとは別に、追加のアニメーションデータを用意するための設定。 |