Version: 2019.3
言語: 日本語
メッシュのコンポーネント
マテリアル

メッシュ

Meshes (メッシュ) は 3D の世界の大部分を占めます。Unity は ProBuilder と呼ばれるモデリングツールを提供しています。また、Mesh DeformerUModelerMesh Editor などのモデリングプラグインも Asset store にあります。また、Unity は大抵の 3D モデリングソフトウェアとの優れた相互作用性を備えています。

Unity は三角形や四角形のポリゴンメッシュをサポートしているため、Nurbs、Nurms、サブディビジョンサーフェスはポリゴンに変換する必要があります。

テクスチャ

Unity は特定の検索プランに従って、メッシュが使用するテクスチャをインポート時に自動的に検索します。まず、インポーターはそのメッシュと同じフォルダー内か、親フォルダー内で Textures という名のサブフォルダーを探します。これが失敗すると、Unity はプロジェクト内のすべてのテクスチャを徹底的に検索します。わずかに時間がかかりますが、徹底的な検索の主な欠点は、プロジェクト内に同じ名前のテクスチャが 2 つ以上あるということです。この場合、Unity が正しいものを見つけられる保証はありません。

アセットと同じ階層、あるいは親の階層にある Textures フォルダーにテクスチャを格納します
アセットと同じ階層、あるいは親の階層にある Textures フォルダーにテクスチャを格納します

(A) テクスチャを見つける可能性のある場所

(B) インポートされたメッシュ

マテリアルの生成と割り当て

Import Settings ウィンドウの Material タブの Standard Material Creation Mode
Import Settings ウィンドウの Material タブの ‘Standard’ Material Creation Mode

Material Creation Mode ドロップダウンから Standard または Import via MaterialDescription (Experimental) を選択し、Location ドロップダウンメニューから Use Embedded Materials を選択すると、Unity は以下を行います。

  1. Import via MaterialDescription (Experimenta1. Naming 設定に基づいて Unity マテリアルの名前を選びます。
  2. その名前の既存のマテリアルを探します。マテリアル検索の範囲は Search 設定で定義されます。
  3. インポートしたシーンで見つかった既存のマテリアルを使用します。一致するマテリアルが見つからない場合は、新しいマテリアルを生成します。

詳細は、Materials タブ のリファレンスページを参照してください。

コライダー

Unity は 2 つの主要なタイプのコライダーを使用します。メッシュコライダーとプリミティブコライダーです。メッシュコライダーはインポートされたメッシュデータを使用するコンポーネントで、Unity はそれらを環境衝突に使用できます。Model タブで Generate Colliders を有効にすると、シーンにメッシュを加えるときに 自動的にメッシュコライダーが追加され、物理演算システムはそのメッシュを固体として扱います。

ゲームオブジェクトを動かす場合 (車など) は、メッシュコライダーは使用できません。代わりに、プリミティブコライダーを使用する必要があります。この場合、Generate Colliders 設定を無効にしてください。

アニメーション

モデルファイルから アニメーションをインポート することができます。Unity にインポートする前に 3DモデリングソフトウェアからFBXファイルをエクスポート のガイドラインに従ってください。

法線マップとキャラクター

多角形モデルから生成した法線マップを適用したキャラクターの場合、Smoothing Angle を 180 度に設定したゲーム品質のバージョンをインポートする必要があります。これは、接線が分割される事によって、継ぎ目のライトが不自然になることを防ぎます。これらの設定でもまだ継ぎ目が残っている場合は、Tangents ドロップダウンから Calculate Legacy With Split Tangents を選択します。グレースケール画像を法線マップに変換する場合は、この問題を心配する必要はありません。

ブレンドシェイプ

3D モデリングアプリケーションから Unity にブレンドシェイプをインポートする方法については、Model Import Settings ウィンドウの Model タブ のドキュメントを参照してください。

ヒント

  • できるだけ多くのメッシュを結合してください。メッシュにできるだけ多くのマテリアルとテクスチャを共有させます。これには、非常に大きなパフォーマンス上の利点があります。

  • Unity でさらにゲームオブジェクトを設定する必要がある場合 (物理特性、スクリプトやその他のコンポーネントの追加など)、3D アプリケーションでゲームオブジェクトに適切な名前をつけるよう気を付けてください。pCube17Box42 のような名前のオブジェクトで作業することは、困難です。

  • 3D モデリングアプリケーションで、ワールドの原点をメッシュの中心に配置します。これにより、Unity に配置しやすくなります。

  • メッシュに頂点色がない場合、Unity は最初にメッシュをレンダリングするときに、メッシュにすべて白の頂点色の配列を自動的に加えます。

  • Unity エディターで、表示される頂点や三角形の数が (3D モデリングアプリケーションの元のモデルと比較して) あまりに多すぎることがあります。

    これは正しい動作です。表示される頂点、または三角形の数は、描画のために GPU に実際に送信される数です。マテリアルの要件によりそれらを 2 回送信する必要がある場合に加え、ハードエッジに設定した法線や、非連続な UV などの場合でも、頂点/三角形の数がモデリングアプリケーションでの表示よりも大幅に増加します。ストリップを作るには、三角形が 3D や UV 空間で連続している必要があるため、UV に継ぎ目がある場合、ストリップを作るために縮退した三角形が作成されます。これによって、合計数がより増加します。

メッシュのコンポーネント
マテリアル