UV マッピングのヒント

Maya が提供するさまざまなツールにより、ポリゴン/サブディビジョン サーフェスをテクスチャ マッピングするために、UV テクスチャ座標を簡単に作成および編集することができます。UV エディタ(UV Editor) (UV > UV エディタ(UV > UV Editor))は、UV を配置およびレイアウトして最適なテクスチャにする主要なツールです。

UV テクスチャ座標の配置方法はマスターすべき重要なスキルで、これは、新しいテクスチャの生成に UV をガイドとして使用するかどうか、または既存のイメージに最適に合わせるために UV を適合させるかどうかによって異なります。最適な配置とは適用するテクスチャの種類によって変わり、またインタラクティブ ゲーム用にレンダリング イメージやモデルを作成するかどうかによっても異なります。

全体的な UV マッピング方法

3D オブジェクトをマッピングする方法は数多くありますが、それぞれが異なる方法で、伸縮/ピンチの最適化と最小化のバランスを取るものになっています。ここでは、最も一般的に使用される 3 つの方法について説明します。

最適化が最優先される UV マッピング

これは、UV マップを極度に最適化するもので、リアルタイムのグラフィックでのみ使用します。できるだけ小さなマップ上にできるだけ大きな適用範囲を作成するという目的を持ちます。極度に最適化された UV マップは、アセットに対する制限が厳しいモバイル/少ポリゴン数のグラフィックに対して最も一般的なマッピングですが、グラフィックス メモリにテクスチャ マップをロードすることは負担が大きいため、現行世代のグラフィックスにとっても同様です。テクセル密度は大幅に変動し、必要に応じて、伸縮とピンチが行われます。プレーンに沿ってまたは放射状にミラー化できるすべてのシェルは、通常、互いにスタックされます。さらに、シェルは U/V にまっすぐ沿う形になり、変形シェイプを含むシェルは小さなパーツにカットされます。境界シェルの直線化を恐がる必要はありません。これにより、シェルを緊密にパックして 0 ~ +1 UV 空間内に収まるようにすることができます。さらに、モバイル グラフィックについては、1 方向の情報のみ必要な場合(グラディエントなど)、または 1 つのポイントの情報(カラーのみ)が必要な場合は、シェルの UV をライン セグメントに押し込むことを検討してください。

詳細については、後述のセクション「最適化」を参照してください。

技術的な UV マッピング

技術的な UV マッピングは上記とは対極的なものです。この方法は、プリ レンダリング グラフィック、技術デモンストレーション、プロモーション マテリアル用にモデルを使用する場合に、最も一般的なマッピングになります。テクスチャ空間や最適化ではなく、ピクセル アスペクト比が非常に重要です。すべてのシェルのテクセル密度が同じで、必要に応じて伸縮/ピンチを除去することが重要です。メッシュの異なるパーツに対して複数の大きな UV マップ(複数タイルの UV マッピングと呼ばれる)を使用するのも一般的です。ただし、すべてのプリ レンダリング アートに UV マップが必要なわけではありません。異なるマテリアルに対してはプロシージャ 3D テクスチャの使用も同様に一般的です。必ずアート ディレクター /アート リーダーに、UV マップが必要かどうか確認してください。

連続 UV マッピング

前の 2 つの方法の中間に位置する方法です。これは、高精細の有機的モデル(キャラクタまたはツリーなど)を操作する場合に最も一般的な方法です。目的は、継ぎ目の数を削減し、シェル間でテクセル密度を保持することです。変形シェイプの UV シェルはどれも、最適化が最優先されるマッピングを難しくするとは言え、最適化を無視しないようにしてください。

最適化

技術的モデルや VFX アセットのマッピングを行っていない限り、メモリの使用量を減らしながら、パフォーマンスを向上させる最適化について検討する必要があります。次に、いくつかのヒントを示します。
  • モデルのどの部分をどんな頻度で、どの距離分をカメラに対して可視化するか検討します。すべての UV シェルに均一なテクセル密度を設定してから、それらの係数に従って上方向または下方向にスケールします。たとえば、アイアンサイトを装備した FPS ゲーム用の武器を作成する場合、スコープ パーツを最高密度にして、銃の右側と前面を最も低い密度にします。
  • シンメトリ マップ: 対称メッシュで作業する場合、プレーン上でミラー化して(あるいは放射状に)シェルをスタックすることができるので、これらのシェルは同じテクスチャ部分を参照することになります。ただし、影響下にあるシェルがどんなアンビエント オクルージョンのシャドウを受けるのか(AO を使用する場合)、注意する必要があります。たとえば、モデルの一方の側に文字やロゴが配置されていて、それをもう一方の側にミラー化したくない場合は、ロゴの領域を除いたシェル全体をミラー化するようにします。あるいは、このロゴの周りに余分なジオメトリを追加してシェルの特定の部分を切り取ってから、この大きなシェルにあるすべてのものをスタックするという方法もあります。シンメトリ マップを簡単にするには、レイアウトを行う前にメッシュを半分に切断します。
  • 分割統治: 最大かつ最も変形したシェイプのシェルを UV 範囲 (0 ~ 1) に最初に配置することにより、UV シェルのレイアウトを開始します。また、テクスチャ マップのシェイプはテクスチャ処理にまったく影響しないため、2:1 または 4:1 など、1:1 以外の率を使用することも検討してください。レイアウトの比率を維持したまま、1 つのコーナーから反対側に向かって作業してください。このようにすると、残った UV 空間が少なすぎる、または多すぎる場合でも、UV レイアウト全体を選択して、これをスケールできます。
  • グラフィック メモリへのテクスチャのロード速度は、テクスチャ内のチャネル数(RGBA はグレースケールより 4 倍高くつく)、テクスチャ内のピクセル数、およびアセットが使用するテクスチャ マップ数を要因として低下します。後者は非常に重要です。環境アートを行う場合、テクスチャ アトラスを使用することを強くお勧めします。

シェルの間隔

シェルの間隔は、UV シェル間のスペースの量を示します(シェルのパディングとも呼ばれます)。シェルの間隔については、注意点がいくつかあります。
  • テクスチャ ブリーディング: テクスチャ ブリーディングは、テクスチャ フィルタリングにより、UV シェル内部のカラー情報が別の UV シェルにブリーディングされる際に発生します。一般的には、テクスチャ マップの境界に 2 ピクセル マージンを配置し、UV シェル間に 4 ピクセル マージンを配置するようにして、すべての UV シェルの周囲に 2 ピクセル以上を保持することをお勧めします。ただし、これはテクスチャの最終バージョンにのみ適用されます。テクスチャ マップがエンジンによってさらに縮小される場合、このパディングを増やす必要があります。
  • LOD モデルが使用される場合、各 LOD/Mipmap ステップでシェルの間隔を 2 倍にすることが必要になります。たとえば、3x LOD ステップと、元のテクスチャ サイズが 2048 ピクセルのアセットがある場合、最小 Mipmap レベルでは、テクスチャは 512 ピクセルのみになります。この場合、間隔は、512 ピクセルではシェル間に 4 ピクセル、1024 ピクセルでは 8 ピクセル、2048 ピクセルでは 16 ピクセル必要になります。つまり、レイアウトを実行する際、シェル間の距離は 16 ピクセル以上、UV マップ境界までの距離は 8 ピクセル以上が必要になります。UV ツールキット測定(Measure)ツールを使用して、ピクセル距離を追跡できます。

UV を 0 ~ +1 のテクスチャ座標内に収める

UV エディタ(UV Editor)には、UV のテクスチャ空間をマークするグリッドが表示されます。グリッドの作業領域は 0 で始まり 1 までの範囲です。既定では、UV は Maya の UV マッピング機能によって 0 ~ 1 の座標内に自動的にフィットします。この 0 ~ 1 の範囲外に UV を移動したりスケールしたりすることは可能ですが、ほとんどの状況では、UV をこの 0 ~ 1 の座標内に配置されたサーフェスに収めてください。

UV が 0 ~ 1 の範囲を超える場合、3D シーンやレンダリング イメージで見ると、テクスチャは対応する頂点付近で繰り返しまたはラップしているように見えます。このガイドラインの例外は、壁のモデルに沿ったレンガのテクスチャなど、本当にテクスチャをサーフェス上で反復させたい場合です。

UV シェルをオーバーラップする

UV エディタ(UV Editor)でオーバーラップしている UV シェルがあると、テクスチャは対応する頂点上で繰り返されます。使用するマッピング方法(上記)によっては、この繰り返しを利用することが必要な場合もあれぱ、必要ない場合もあるでしょう。UV ツールキットシェルをスタック(Stack Shells)コマンドを使用してシェルを簡単にスタックすることも、レイアウト(Layout)コマンドを使用して分離することもできます。

UV をスナップする

UV エディタ(UV Editor)でスナップを使用して、シーン内の既存のオブジェクトに変換をロックすることができます。この機能は、シーン ビューのスナップ機能に似ています。

複数の UV を変換するときに、これらの相対間隔を保持するには、移動ツール(Move Tool)設定のコンポーネント間隔の維持(Retain component spacing)オプションを使用します。

スナップ先 キー アイコン
グリッドの交点 x

(ステータス ライン)

その他の UV (ポイント) v

(ステータス ライン)

ピクセル  

(UV エディタ ツール バー)

注:
  • スナップがオンのときに、軸マニピュレータを(マニピュレータの中心とは反対方向に)ドラッグした場合、マニピュレータは(スナップ モードに応じて)この軸に制限されているニアレスト ポイント、またはグリッドの交点にスナップされます。また、Shift + x または Shift + v を使用して、U または V 軸に制限されたニアレスト ポイントにスナップすることもできます。
  • ピクセルにスナップ(Pixel Snapping)はモニターのピクセル数により測定されます。よりよい結果を得るには、UV の近くにズーム インします。この設定は、ピボット位置の回転やスケーリングのためのスナップにも影響を与えます。

関連項目