ベイク
ベーキングは、ローポリメッシュで使用されるテクスチャマップに、高ポリディテールを転送します。 きれいな結果は準備によって異なります:固定三角化、編成ベークグループ、制御された重複、検証済みのケージ、およびノーマルマップが何ができるのかを明確に理解できます。
ベーキングは、特にエンコードされたテクスチャマップを介して、高ポリジオメトリから低ポリメッシュに詳細を転送するプロセスです。 これらのマップは、リアルタイムのアセットが、実用的なパフォーマンス予算内で滞在しながら、高ポリモデルの視覚的複雑さを維持できるようにします。
高多・低多メッシュをベーカーに送る前に、いくつかの準備手順が重要です。
ベイクに向けたアセットの準備
輸出前の低ポリをトリアンスし、ベーキング中にメイン0〜1タイルの外側にミラーリングされたシェルを移動し、一貫して名前を付けられた部分を分割 _low そして、 _high グループ。 これは、部品間の不一致の三角形と不要な投射を防ぎます。
まず、輸出前に低多メッシュをトリアンス化する必要があります。 手動で行わない場合は、ベーカーまたはゲームエンジンが自動的にメッシュをトリガし、元のDCCパッケージからトリガを一致させない場合があります。 小さな三角化の違いでも、シェーディングを変更し、可視ベークアーティファクトを生成できます。
第二に、鏡面またはUVを重ねることは、通常、ベーキング中にメイン0〜1 UVスペース外に移動する必要があります。 一般的なアプローチは、次のUDIMタイルにミラーリングされたシェルをシフトすることです。 これは、周囲の閉塞、ノーマルマップの投影、または鏡面の部分に誤って焼き上げるから非対称シェードを防ぐことができます。
第三に、同一または交差する要素をベークグループに分ける必要があります。 信頼できる方法は、次のような一貫性のある命名規則を使用することです。
partname_low
partname_highこれにより、ベーカーは、対応する高ポリソースで各低ポリ要素に自動的にマッチさせることができます。 未関連幾何学を誤った面に映し出すのを防ぐ。 大規模なアセットでは、スクリプトや既存のパイプラインツールを使用して、このネーミングプロセスを自動化できます。
これらの手順が完了すると、アセットはベーキングソフトウェアにインポートすることができます。
ベイク用ツール
マーモセットツールバッグは、高速反復、高品質のプレビュー、柔軟な材料グループ、ケージコントロール、およびスキュー塗装を組み合わせるので、このワークフローの主な例です。 コントロールされたベベルは、それ以外の場合、リアルタイムでエイリアスであろうエッジに安定したハイライトを保存します。
このワークフローでは、Marmoset Toolbagは強力な例です。 我々のケースでは、速度、柔軟性、プレビュー品質、および生産にやさしい機能セットのために、プライマリベーキングツールです。
高ポリモデルの場合、異なるベベルシェーダー設定で複数の材料グループを用意します。 それらは非常に鋭い斜めの行動、機械で造られた金属のために適した、形成されたプラスチック、ゴム、または鋳造物の部品のためのより柔らかい斜面に及ぶことができます。
技術的に、この設定の一部は、モデリングソフトウェア内でエクスポートする前に行うことができます。 しかし、ツールバッグは、ベーキングステージ中の外観を検証し、調整するのに便利です。
フォトメトリックまたはスキャンしたPBRデータが利用可能な場合、小さなベベルシェーダーでこの段階でも適用できます。 実際の生活では、一部のエッジは非常にシャープにすることができますが、リアルタイムのレンダリングであまりにも文字通りそれらを再現することは、エイリアシングを引き起こす可能性があります。 制御されたベベルは、不安定なピクセルを作成せずに、信じられないほどのハイライトを維持するのに役立ちます。
ベイクするマップ
コアベークは、アンビエントOcclusion、タンジェントスペースのノーマル、オブジェクトID、カーバチュア、厚さ、位置、世界規模のノーマル、および時々ベントノーマルを含みます。 各マップは、リアルタイムのシェーディングや手続き型テクスチャーをサポートしています。
焼きたてのマップの最終セットは、アセットタイプ、シェーダーの要件、およびワークフローのテクスチャーに依存します。 武器アセットについては、最も一般的な地図には、以下が含まれます。
アンビエントオクルージョン
周囲の Occlusion は幾何学が一緒に閉まるか、または部分的に封じられているので表面がより少ない包囲されたライトを受け取る区域を定義します。
細かい部分を接地したり、小さな接触領域を強調したり、手続き型テクスチャーをサポートしたりするのに便利です。
タンジェント空間ノーマルマップ
タンジェントスペースのノーマルマップは、低多面のシェーディングと高多面の表面のディテールの違いを格納します。
ワークフローの中で最も重要なマップの1つです。 低ポリモデルは、その形状をリアルタイムに運ぶことなく、ベベル、カット、溝、ネジ、スタンピング詳細、およびその他の高ポリ情報を視覚的に再現することができます。
ゲームの場合、通常、Unreal Engine 4 や 5. で使用される DirectX のオリエンテーションなど、エンジンが必要とするターゲットの通常の慣例で焼く。
オブジェクトID
オブジェクトIDマップは、異なる高ポリオブジェクトや材料グループにユニークな色を割り当てます。
これは、高速マスキング、材料分離、手続き選択、および制御層生成を可能にするため、テクスチャー中に非常に便利です。
カーバチュア
カーバチュアマップは、凸面と凹面の遷移に関する情報を格納します。
コンベックスエリアは、通常、露出したエッジを表し、凹凸領域はクレア、キャビティ、または凹凸ゾーンを表しています。 このマップは、手続きのエッジウェア、汚れの蓄積、傷、材料の老化に大きく使用されます。
厚さ:
厚さマップは、メッシュの厚みや薄い部分がいかに表されます。
サブサーフェス効果、マスク、手続き型ジェネレータ、特定の材料の動作に役立ちます。 文字、有機物、または特定のプロップ材料はより一般的ですが、ハードサーフェスパイプラインでは有用です。
ポジション
位置マップは、3D空間内のモデル表面の絶対XYZ座標をエンコードします。
世界空間の勾配、指向性汚れ、縦型マスク、または世界空間のぼる効果など、空間情報に依存する発電機やフィルタに便利です。
ワールド空間ノーマルマップ
世界空間のノーマルマップは、各表面がXYZ空間で直面している方向を格納します。
発電機、方向マスク、照明ベースの効果、および手続き型テクスチャーロジックに便利です。
ベントノーマルマップ
ベントの普通の地図は通常の地図に概念で似ていますが、それはモデルの各ポイントのための周囲の光の平均無結節の方向を貯えます。
これは、標準的な周囲の閉塞が十分な方向情報を提供することができない車両およびより大きい表面アセットのために特に有用です。 特定のワークフローでより正確な周囲シェーディングをシミュレートできます。
ケージ・スキュー・投影の制御
ケージは低から高までの投影を定義します。 ボルト、溝、穴および薄い部品は頻繁にローカル シュートの訂正を必要とします。 繰り返し補正タスクは、手動で塗装する代わりにUV-distanceマスクで自動化できます。
最後のベークの前に、ケージは慎重にチェックする必要があります。
ケージは、高ポリモデルに対する低多面的なプロジェクトを制御する。
骨の訂正はまた、特にボルト、溝、穴および薄い機械細部のまわりで重要、です。 マーモセットツールバッグでは、問題のある領域で投影方向を制御するためにスキュー塗装を使用することができます。
このプロセスは、部分的に自動化することもできます。 例えば、オフセットまたはスキュー補正用のマスクは、手動で塗装される代わりにUVシェル距離に基づいてPythonで生成できます。 これはパイプラインにいくつかの複雑さを追加します。, しかし、繰り返された生産の場合、それは時間を節約し、一貫性を向上させることができます.
ベイクの解像度と品質設定
最後のテクスチャの解像度を2回に焼くと、ダウンサンプル。 強力な出発点は、32xのサンプリング、16ビットのノーマルマップ、分離されたグループ、検証済みのケージ、チェックされたスカウ、および交差がAOを汚染する爆発的な可動部分です。
生産ベイクでは、通常は2倍の最終ゲーム内テクスチャの解像度で焼くのが安全です。
たとえば、最後のテクスチャが4Kの場合、8Kでベークを生成し、その後、ダウンサンプリングすることができます。 これは、エイリアシングを削減し、薄い詳細、斜面、および高周波情報の品質を向上させることができます。
高品質のベークのための強い出発点は次のとおりです。
- 最終テクスチャの2倍の解像度
- 32倍サンプリング
- 16ビットのノーマルマップ
- 分離したベイクグループ
- 検証済みのケージ
- スキュー補正の確認
- 必要に応じて部品を露出またはオフセット
移動可能な要素やアニメーション要素は、ベーキング中にメインアセットから離れることが多いです。 この助けは、特に部品が組み立てられた位置に一緒に閉まるとき、周囲の閉塞の交差を防ぎます。
ノーマルマップに関する重要な注意点
タンジェント・スペースのノーマルマップは元の表面を正常な調節します;それらは根本的に不正確な低重の陰影を取り替えません。 非常に急な移行は、ハードエッジ、UVシーム、ベベル、またはジオメトリをサポートする必要があります。
ゲームアセットの一般的な問題は、非常に急な角度を滑らかにし、すべての問題を解決するためにノーマルマップを期待しようとしています。
練習では、約75度上の滑らかな角度は、簡単にゲームエンジンで悪い陰影を作り出すことができます。 理由は、有形空間のノーマルマップが完全に表面方向を再定義するように設計されていないことです。 ピクセルベースの補正マップで、ビットの深さと値範囲が制限されています。
元の表面を正常な調節するベクトルとして形空間のノーマルマップは理解されるべきです。 正し、シェーディングを高めることができますが、根本的に異なるローポリの通常の方向を完全に置き換えることはできません。
硬いエッジ、UVスプリット、トポロジー計画がまだ問題となっている理由です。
表面遷移があまりにも鋭くなれば、通常は硬いエッジとUVシーム、ベベル、またはより良いジオメトリによってサポートされています。 ノーマルマップのみのリリーは、多くの場合、勾配、キャビネス、圧縮アーティファクト、または不安定なハイライトになります。
なぜ世界宇宙のノーマルだけ使用しないのですか?
世界空間のノーマルは、ユニークな静的なオブジェクトに適することができますが、それらは、ミラーリングまたはオーバーラップUV、アニメーション、回転および再使用可能な幾何学で分解します。 オブジェクトがシーンに移動した後にエンジンが変換されるため、タンジェントスペースのノーマルはより柔軟です。
自然な質問は: tangent-space の普通が制限がある場合、なぜ代わりに世界空間のノーマルマップを使用しないのですか?
宇宙空間のノーマルマップは、特に静的環境のアセットやユニークな非変形オブジェクトに役立ちます。 シェーダーコストを削減し、特定の有形空間の問題を回避することができます。
しかし、ゲームアセットのユニバーサルソリューションとして実用的ではありません。
世界空間のノーマルは、ミラーリングUV、オーバーラップUV、またはアニメーションジオメトリでうまく機能しません。 オブジェクトが移動したら、回転、変形、または共有テクスチャスペースを使用して、テクスチャに保存された世界空間の方向はもはや正しく動作しません。
現代のゲームエンジンでは、オブジェクトが配置され、シーンで変換された後、レンダリング中に有形空間のノーマルが世界空間に変換されます。 これは、アニメーションアセット、武器、キャラクター、再使用可能な幾何学のためにはるかに柔軟に有形空間のノーマルマップを作ります。
宇宙空間のノーマルマップは、特定のケースで強制することができますが、通常、インタラクティブなアセットではなく、ユニークな静的な環境アセットに適しています。
生産原則
クリーンなベークは、高ポリディテールとリアルタイム性能のブリッジです。 準備は、ベーク後の投影や陰影の問題を修復しようとするよりも重要です。
きれいなベークは技術的なチェックポイントだけではありません。 高ポリディテールとリアルタイム性能のブリッジです。
良いベイクには準備が欠かせません。正しい三角形分割、整ったUV、適切なスムージング、ケージの設定、統一された命名、ベイクグループの分離、そしてノーマルマップで解決できることとできないことへの理解が必要です。
VRの武器の芸術のために、ベークの質はプレーヤーが近い範囲でアセットを点検するので特に重要です。 投影エラー、アーティファクトのシェーディング、スキュードディテール、または不安定なハイライトは、ステレオとモーションではるかに表示されます。