Unity に3D モデルをインポートするときは,ファイルをプロジェクト ウィンドウへドラッグします。
Inspector の Model タブで: Unity は最も主要な 3D アプリケーションからのモデルのインポートをサポートします。
Unityへメッシュをインポートする方法は主に2つのファイルで行うことが出来ます:
.Max
の3D Studio Max, または.Blend
のBlenderのファイル形式である 3Dアプリケーションの専用ファイル
どの方法でもUnityにメッシュに取り込むことができますが,どれを選ぶにあたって考慮すべき事があります。
Unityは.FBX ,.dae (Collada),.3DS,.dxf および.obj のFBXエクスポータファイルを読み込むことができ,FBXエクスポータはここ にある多くのアプリケーションでobjやColladaのエクスポーターを見つけることが出来ます。
長所:
短所:
Unityが変換を通してインポートできるファイル形式: Max , Maya , Blender , Cinema4D , Modo , Lightwave , Cheetah3D ,たとえば .MAX , .MB , .MA など
長所:
短所:
3D パッケージごとの特定のインポート方法に関する内容については,次のページを参照して下さい:
Unityへメッシュをインポートする方法は主に2つのファイルで行うことが出来ます:
.Max
の3D Studio Max, または.Blend
のBlenderのファイル形式である 3Dアプリケーションの専用ファイル
どの方法でもUnityにメッシュに取り込むことができますが,どれを選ぶにあたって考慮すべき事があります。
Unityは.FBX ,.dae (Collada),.3DS,.dxf および.obj のFBXエクスポータファイルを読み込むことができ,FBXエクスポータはここ にある多くのアプリケーションでobjやColladaのエクスポーターを見つけることが出来ます。
長所:
短所:
Unityが変換を通してインポートできるファイル形式: Max , Maya , Blender , Cinema4D , Modo , Lightwave , Cheetah3D ,たとえば .MAX , .MB , .MA など
長所:
短所:
Unity プロジェクトの Assets フォルダに配置されたモデル ファイルは自動的にインポートされ Unity アセットとして格納されます。
モデル ファイルには 3D モデルとしてキャラクター,建物,家具などを含むかもしれません。モデルは複数のアセットとしてインポートされます。プロジェクト ビューで主なインポートされたオブジェクトがモデル プレハブとなります。通常は複数のメッシュ オブジェクトがモデル プレハブから参照されます。
モデル ファイルには,このモデルまたは他のモデルに使用できるアニメーション データを含む場合があります。アニメーション データはひとつ以上のアニメーション クリップとしてインポートされます。
モデルファイルの Import Settings は,モデルが選択されたときに,FBXインポータインスペクタの Model タブに表示されます。この設定は メッシュ や 法線マップ ,インポートされた マテリアル に影響を与えます。設定はディスク上のアセットごとに適用されますので,別の設定を持ったアセットでが必要な場合は複製したうえで適切にリネームします。
最初はデフォルト設定で十分ですが,ゲームオブジェクトで実現したいことによっては,以下の設定を知る価値があるかもしれません。
たとえば,よくある設定変更を挙げると:
プロパティ: | 特徴: |
---|---|
Meshes | |
Scale Factor | Unity の物理特性システムは,ゲーム世界での 1 メートルを,インポートされたファイルでの 1 単位と考えます。 異なるスケールでモデリングしたい場合は,ここで修正します。異なる3Dパッケージのデフォルトは次のとおりです。 (.fbx,.max,.jas,.c4d) = 0.01,(.mb,.ma,.lxo,.dxf,.blend,.dae) = 1,(.3ds) = 0.1 |
Mesh Compression | この値を上げると,メッシュのファイル サイズが小さくなりますが,異常が生じる可能性があります。 メッシュが解凍後と違いすぎないように,できる限り高い値に設定します。これは,ゲームサイズの最適化 に便利です。 |
Read/Write Enabled | ランタイム時にメッシュを書込可能とし,メモリ内でコピーが作成されます。このオプションをオフにすると Unity がゲームのメッシュデータをアンロードできるためメモリが節約できます。しかし実行時に不均等なスケールでメッシュをスケールまたはインスタンス化するとインポート設定で “Read/Write Enabled” を有効化しないといけない場合があります。それは不均等なスケールはメッシュデータをメモリ保持する必要があるためです。通常,ビルド時にこれは検知されますがメッシュが実行時にスケールまたはインスタンス化すると手動で設定する必要があります。そうしない場合ゲームのビルド時に正しくレンダリングされないかもしれません。 |
Optimize Mesh | このオプションは,三角形メッシュが表示される順序を決定します。 |
Import BlendShapes | メッシュに自動的メッシュコライダーをアタッチしてインポート。背景の物体の衝突メッシュを簡易にを生成するのに便利,一方で移動しない物体では避けるべきです。 |
Generate Colliders | Lightmapped オブジェクトが間違えた UV チャンネルを選択した場合に使用します。 これにより,1 次および 2 次 UV チャンネルがスワップされます。 |
Swap UVs | ライトマップされたオブジェクトが間違ったUVチャンネルを拾い上げている時に使用します。これはプライマリとセカンダリのUVチャンネルを入れ替えます。 |
Generate Lightmap | Lightmapping に使用する UV2 を作成するために使用します。 |
Advanced Options | ライトマップUV を参照して下さい。. |
Normals & Tangents | |
Normals | 法線を計算するかどうか,およびどのように計算するかを定義します。これは,ゲームサイズの最適化 に便利です。 |
Import | デフォルトのオプション。ファイルから法線をインポートします。 |
Calculate | 「Smoothing angle」に基づいて,法線を計算します。選択すると,「Smoothing Angle」が有効になります。 |
None | 法線を無効にします。 このオプションは,メッシュがマップされた法線およびリアルタイムのライティングの影響を受けている法線でない場合に使用します。 |
Tangents | 接線および従法線を計算するかどうか,およびどのように計算するかを定義します。これは,ゲームサイズの最適化 に便利です。 |
Import | ファイルから接線および従法線をインポートします。このオプションは,FBX,Maya および 3dsMax ファイルにのみと,法線がファイルからインポートされる時にのみ使用できます。 |
Calculate | デフォルトのオプション。 接線および従法線を計算します。接線および従法線を計算します。このオプションは,法線がインポートまたは計算されるかのいずれかの場合でのみ使用できます。 |
None | 接線および従法線を無効にします。メッシュに接線はないため,法線をマップしたシェーダとは使用できません |
Smoothing Angle | 端の鋭さの度合いを硬い端として設定します。これは,法線のマップ接線を分割するのにも使用されます。 |
Split Tangents | 法線マップライティングがメッシュ上の継ぎ目で分割される場合に,これを有効にします。 通常これはキャラクターにのみ適用されます。通常これはキャラクターにのみ適用されます。 |
Materials | |
Import Materials | 無効にするとマテリアルが生成されなくなります。デフォルトのDiffuseマテリアルが代わりに使用されます。 |
Material Naming | Unityのマテリアルの命名を制御します |
By Base Texture Name | Unityのマテリアルを命名する際に基準とするインポートされたマテリアルのDiffuseテクスチャ。Diffuseテクスチャがマテリアルに割り当てられていない場合,Unityはインポートされたマテリアルの名前を使用します。 |
From Model’s Material | Unityのマテリアルを命名する際に基準となるインポートされたマテリアル。 |
Model Name + Model’s Material | Unityのマテリアルを命名する際にモデルファイル名とインポートされたマテリアル名の組み合わせが使用されます。 |
Texture Name or Model Name + Model’s Material (Obsolete) | Unityのマテリアルを命名する際にインポートされたマテリアル名のDiffuseテクスチャが使用されます。Diffuseテクスチャがマテリアルに割り当てられていない場合,Unityはインポートされたマテリアルの名前を使用します。モデル名とモデルのマテリアル名の組み合わせを使用します。このオプションは,Unity 3.4(およびそれ以前のバージョン)の動作と下位互換性があります。推奨設定はBy Base texture Nameであり,もっともシンプルで一貫性のある動作を伴います。 |
Material Search | Material Namingオプションで定義された名前でUnityがマテリアルを検索する場所を制御します: |
Local | Unityは,マテリアルと同じフォルダ内でのみ(すなわちモデルファイルと同一フォルダ),同じ名前のマテリアルがあるかチェックします。 |
Recursive-Up | Unityは,マテリアルと同じフォルダ内,およびAssetsフォルダに到達するまで,その全ての上位フォルダで,同じ名前のマテリアルがあるかチェックします。 |
Everywhere | Unityは,プロジェクト フォルダ全体から同じ名前のマテリアルがあるかチェックします。 |