ベーキング

ベイク処理は、テクスチャとライティング情報を事前に計算するために使用されるプロセスです。結果は、多くの場合、リアルタイムアプリケーション(ゲームなど)や、複雑なシェーディングをそのまま使用して他のソフトウェアパッケージにモデルをエクスポートするため、または複雑なシーンでのレンダリングオーバーヘッドを排除する方法としてのみ使用されます。このようにして、シェーダーとライティングはModoレンダリングエンジンを使用して、既存のUVテクスチャに完全にマップする画像に直接焼き付けます。

Perspective Projection

Perspective Projection

Perspective Projection

高解像度ジオメトリ

低解像度のジオメトリ

Lo-res Baked Result

目的が何であるかに応じて、イメージをベイクする方法はいくつかあります。複数を単純にマージ(フラット化)することが目的の場合Shader Treeレイヤーの場合、必要なのは、 Shader Tree適切に設定Effect焼く前にタイプしてください。

変位マップや法線マップなどのマップをベイク処理する場合、ジオメトリの2つのレイヤーが必要です。通常、1つは最終モデルのすべての詳細で構成される高解像度モデルであり、2つ目の低解像度モデルは提供する高解像度モデルの形状に近いものですベーキングターゲットとして。低解像度のジオメトリには、一意の名前(高解像度バージョンに割り当てられたUVマップから一意)の適切なUVマップが必要です。さらに、該当するレイヤーが項目リストで選択されていること、および適切なUVマップも選択されていることを確認する必要があります。テクスチャをベイク処理するときは、適切なイメージマップを配置し、 Shader Tree -心配する必要はありません。複雑に聞こえるだけです。各設定の詳細は以下のとおりです。

レイヤーの追加と設定に関する情報レイヤー効果、 参照してくださいシェーダーツリー。ベーキングコマンドは、 RenderメニューおよびコンテキストメニューからShader Treeレイヤー。

ヒント:  詳細については、 でゲームアセットを作成するModoビデオシリーズ。

アイテムのベイクとゲームツールでのベイク

Modoには、特に次のようなベーキングプロセスを簡略化するさまざまな機能があります。

Bake Item -使用できるすべてのさまざまな設定のコンテナ。これらにより、同じベイクをすばやく再トリガーできます。

Baking tools -ベイクコンポーネントを作成するためのショートカットセット。 Baking WizardBakingゲームツールレイアウトツールボックスのツール、およびMesh Operationsリスト。

ベーキングに慣れていない場合は、さまざまなベーキング操作に慣れることをお勧めします。これを理解したら、 ベイクアイテムとベイクツールの操作これらのベーキングツールとその使用方法の詳細については、

注意:  これらのツールは、このトピックで説明されているワークフローの代替ワークフローを提供します。

ヒント:  シェーダのベイクに必要なベイク時間とメモリを削減するには、 Object Normalテクスチャ効果。詳細については、 エフェクト-シェーダーアイテム

ケージと光線距離

ベイクすると、高解像度モデルで光線が発射され、光線がサーフェスと交差すると、ディテールがテクスチャに保存されます。したがって、ベイク処理では、レイの原点を特定するためにオフセット距離が必要です。このオフセット距離は、精度を失うことなく、必要なすべての詳細を含めるように調整する必要があります。にModo、この距離は次の2つの方法のいずれかで定義できます。

Cage -を使用したメッシュの変形Morph Map。光線は表面から発射されますCage

Distance -メッシュサーフェスからの距離オフセット。

これらは、ベイクサーフェスからの正と負の両方の最大光線移動量を表し、2つのサーフェス間のすべてのサーフェス偏差を含むように設定する必要があります。

Cage特別に作成されたMorph Map通常、モーフサーフェスは制限サーフェスからオフセットされ、モーフの位置と変形されていないサーフェスの位置の差を使用して光線の距離を表す、ベイク処理ジオメトリ上。

注意:  ベーキングするとき、 CageDistance値は0 (ゼロ)。

Distance値はメッシュサーフェスからの単純な測定値であり、メッシュ全体で使用されます。

注意:  ベイク結果の黒い領域は、定義された領域を超えていますDistance。あなたは増やすことができますDistanceそれらを排除するために使用しますが、値を高く設定しすぎると精度が低下し、ジオメトリによってはエラーが発生する可能性があります。

出力をレンダリングするためにベイク処理する

コマンドBake to Render Outputsでは、サーフェスからUVマップを使用して、テクスチャマップとしてサーフェスに戻すことができるレンダリングイメージを生成できます。

このコマンドは、 Shader Treeレンダリング出力、次のベーキングを許可します。

アンビエントオクルージョン固有のテクスチャマップ、

Diffuse Coefficient地図、または

焼くFinal Colorターゲットアイテムのすべての表面とシェーディングを完全に計算するマップ。

レンダリングされると、画像はディスクからディスクに保存できますレンダリング表示ビューポート、インポートしてジオメトリに適用し直します。

焼く前に、次の手順に従うことが重要です。

1.   対象アイテムをItemsリストまたは3Dビューポート。
2.   頂点マップでターゲットUVマップを選択しますListsビューポート。

レンダーベイクは、 Shader Treeレンダーアイテムベイク品質を決定し、 Frame Size設定。さらに、オフセット量が最終的なピクセルに適用され、UV境界のエッジで起こり得る継ぎ目を削減または排除します。

注意:  ボーダーオフセットの量は、 Bake UV Border Sizeの設定環境設定。見るUVボーダーをベイク詳細については。

デフォルトのシーンでは、 Render Outputに設定されていますFinal Colorで、エフェクトタイプを右クリックして、 Effectsの列Shader Tree代替のレンダリング出力スタイルを定義します。ターゲット項目が選択されたら、コマンドを呼び出しますRender > Bake to Render OutputsすべてをアクティブにしますRender Outputs同時に。

オープンプログレッシブベーキング

プログレッシブベイクをすばやくレンダリングし、レンダリングオプションを設定するには、アプリケーションメニューバーで、 Render > Open Progressive Baking。のビューポートのプレビュー表示されます。

レンダープレビューウィンドウでテクスチャとライティング情報をプレビューし、プロパティを徐々に調整しながら変更を確認できます。これにより、作業の反復が速くなり、拡散マップとライトマップのベイク、トラブルシューティング、およびアートディレクションの開発を行うときに、よりインタラクティブなエクスペリエンスが提供されます。

このビデオでは、ライティングとシェーディングの詳細を転送するためのテクスチャベイクワークフローを紹介しています。

ベイクアイテムを作成および構成する方法の詳細については、 ベイクアイテムとベイクツールの操作

ヒント:  プレビューでは、完全なプログレッシブレンダリング状態が保存されます。 自動保存保存を完了します。以前のレンダリング状態を後で読み込むことができます。

オブジェクトからベイクして出力をレンダリングする

Bake from Object to Render Outputsコマンドはに似ていますBake to Render Outputs上記のコマンドを使用すると、代替メッシュレイヤーを使用して結果を生成する追加機能が可能になります。基本的には、あるオブジェクトから別のオブジェクトにサーフェスを転送しています。

通常、このセットアップは以下で構成されます。

詳細な高解像度メッシュ(ソースメッシュ)を持つ1つのレイヤー、および

ターゲットのベーキングメッシュレイヤー。これは低解像度メッシュで、高解像度レイヤーの全体的な形状を近似します。

この機能はゲームでよく使用され、高解像度のアセットからの詳細な表面が低解像度のアセットに適用され、最終的なモデルでより高い解像度の全体的な視覚的印象を与えます。レンダリングしたら、画像をレンダリング表示次に、インポートしてターゲットジオメトリに適用します。

オブジェクトからベイクするには、次の手順が必要です。

1.   高解像度モデルを含む背景メッシュレイヤーを追加します。これはItemsリスト、しかし選択されていません。
2.   低解像度モデルを含むフォアグラウンドメッシュレイヤーと一意に名前が付けられたUVマップを追加します。レイヤーが表示され、選択されているはずです。
3.   でフォアグラウンドメッシュUVマップを選択します。 Listsビューポート。
4.   コマンドを選択しますRender > Bake from Object to Render Outputs

これにより、ベイクオプションダイアログが開きます。

5.   オフセットを入力してくださいDistanceこれは、2つのメッシュレイヤー間のすべての表面の違いを含む必要があります。

注意:  定義済みのCageオフセット距離を決定します。

6.   クリックOKModoバックグラウンドレイヤーから幾何学的、シェーディング、およびライティング情報を抽出し、この詳細をフォアグラウンドメッシュのUVマップに焼き付けます。

注意:  押すOKすべてをアクティブにしますRender Outputs同時に。

選択したテクスチャにベイク

コマンドBake to Selected Texture下のメニューバーにありますRender > Bake to Selected Texture、しかしより一般的にはShader Tree直接、右クリックのコンテキストメニュー(ターゲットレイヤーをクリックして開く)を使用します。 Bake to Texture

このコマンドは、1つ以上のビットマップテクスチャを生成しますShader Treeすべてのレイヤーが同じを共有する場合のテクスチャレイヤーEffectタイプ。関数の一般的な用途は次のとおりです。

手続き型テクスチャレイヤーをディスプレイスメントフリーズ用のビットマップに変換する、または

複雑な複数を組み合わせるShader Treeレイヤーを1つのレイヤーに、または

オクルージョン、レンダリング時間の節約、発生する可能性のあるフレーム間の差異を排除するなど、レンダリングに集中する効果を事前に計算します。

この機能を使用するには:

1.   最初に新しいImage MapのレイヤーShader Treeファイルの保存場所が定義されています。 ResolutionそしてBit Depth 。作成についての情報Image Maps、 参照してください画像を追加

注意:  Texture Locator設定はベイク処理に適切なUVマップを決定するために使用されるため、画像が適切に適用されていることを確認してください。

注意:  内のレイヤーの位置Shader Treeターゲットより下のレイヤーのみがベイク処理について評価されるため、重要です。

2.   を定義しますEffectレイヤーの場合、これはソースレイヤーと一致する必要があります。
3.   ターゲットのベイクレイヤー自体がベイクの一部として評価されないようにするには、(アイカラムを切り替えることによって)レイヤーの可視性を無効にします。
4.   レイヤーを右クリックして、 Bake to Texture

これにより、 Render Display窓。

5.   を使用して画像を保存しますSave Imageボタン。

UDIMタイルにベイク処理

UVマップでテクスチャ配置にUDIMを使用している場合は、 Use Clip UDIMのオプションTexture LocatorのタブShader Treeプロパティ。UDIMレイヤーをShader Treeを使用して(new udims)、UDIMを最初から作成する、または(load udims) 、既存のUDIMを使用します。

UDIMをベイクするには

注意:  次の手順では、UDIMフォルダを最初から作成します。 (new udims)。を使用して既存のフォルダを追加することもできます(load udims)。フォルダ内の画像は、ベイク処理された画像で上書きできます。

1.   シェーダーツリーで、次を使用してUDIMレイヤーを追加します。 Add Layer > Image Map > (new udims)

これにより、フォルダーブラウザーが開きます。

2.   フォルダを選択してクリックSelect Folder

UDIM Wizard開きます。

3.   必要に応じてフィールドを編集します。見るUDIMウィザードを使用したUDIMの作成詳細については。UVマップのUDIM範囲と一致するように、正しい数のUDIMを生成することが重要です。生成される量は、 UDIM Range StartそしてUDIM Range End田畑。たとえば、範囲を1001から1003に設定すると、 Modo U = 0、U = 1、U = 2に配置された3つのUDIMタイルを生成します。

小切手Overwrite Existing Images新しいUDIMにより、宛先フォルダー内の同じ名前の既存のUDIMが置き換えられます。

4.   クリックOK UDIMを生成します。

これにより、UDIMレイヤーがShader Tree

5.   新しいレイヤーの位置に応じてShader Tree、新しいUDIMは既存のレイヤーをオーバーレイし、メッシュ上に表示されます。これをベイクするために新しいレイヤーを見る必要がないので、これは問題ではありません。の左側の列にある可視性アイコンをクリックして、レイヤーを非表示にしますShader Tree
6.   新しいUDIMレイヤーを右クリックし、 Bake to Texture

ベーキングウィンドウが開き、各タイルが自動的にベイクされます。

7.   UDIMを保存する必要があります。を開く画像/クリップリスト新しいUDIMを含むフォルダーを展開します。

保存されていないことを示すために、画像の名前にはアスタリスクが付いています。

8.   すべてのUDIMイメージを選択し、右クリックして選択します。 Save

アスタリスクが消え、画像が宛先フォルダに保存されます。

オブジェクトから選択したテクスチャにベイク処理

コマンドBake from Object to Selected Textureで説明されているフォアグラウンドおよびバックグラウンドメッシュレイヤー機能を使用して、2つの特定のタイプのテクスチャマップを生成するために使用できます。 ベーキング。具体的には、この関数はDisplacement MapsそしてNormal Maps

Displacement Map低解像度の前景メッシュと高解像度の背景メッシュの位置の違いを表すグレースケールイメージです。あNormal Map色を使用してサーフェスの法線方向の違い。両方のマップは、生成されると、より低い解像度のジオメトリに適用して、はるかに高い解像度の印象を与えることができます。

注意:  ベーキングありNormal Maps、あなたはどちらかを使うことができますCageまたはDistance値。ためにDisplacement MapsDistance値。

使用するBake from Object to Selected Texture

1.   高解像度モデルを含む背景メッシュレイヤーを追加します。これは、 Itemsリスト、しかし選択されていません。
2.   低解像度モデルを含むフォアグラウンドメッシュレイヤーと一意に名前が付けられたUVマップを追加します。レイヤーが表示され、選択されているはずです。
3.   でフォアグラウンドメッシュUVマップを選択します。 Listsビューポート。
4.   オプションで、 Cage、追加Morph Map 、これはサーフェスからオフセットされています。
5.   適切なターゲットビットマップテクスチャレイヤーをShader Tree必要なEffectタイプ(などNormal)。

注意:  関連するTexture Locator設定はベイク処理に適切なUVマップを決定するために使用されるため、画像が正しく適用されていることを確認してください。

6.   ターゲットベーキングレイヤーがベイクの一部として評価されないようにするには、(目の列を切り替えることによって)テクスチャレイヤーの可視性を無効にします。
7.   テクスチャレイヤーを右クリックして選択しますBake from Object to Selected Texture

これにより、ベイクダイアログが開きます。

Bake 2 Popup

8.   あなたが使用している場合Cage生成するNormal Map、 を選択Cageそして去るDistance0 m。または、 Normal MapsまたはDisplacement Maps、指定Distance値。
9.   クリックOK

これにより、 Render DisplayそしてModoディテールをテクスチャレイヤーに焼き付けます。

10.   を使用して画像を保存しますSave Imageボタン。

注意:  確認してくださいNormal MapのレイヤーShader Treeベークしようとしているアイテムと同じマスクにありません。

UVボーダーをベイク

ジオメトリのタイプ、およびベイク処理されたイメージの解像度によっては、UVボーダーシームが表示される場合があります。これらは、 UVボーダーサイズをベイク処理オプションSystem > Preferences、下にリストRendering > Final Rendering。これにより、特定の継ぎ目を避けるために、指定したピクセル数だけUV境界が拡張されます。

注意:  Bake UV Border Sizeボーダー拡張を有効にするには、0より大きい必要があります。

Bake UV Border機能にはアクティブが必要ですアルファ Render Outputレンダリング出力と同じアンチエイリアス設定を使用します。いいえの場合Alpha Render Outputこの条件を満たすことが判明し、 Modo自動的に1つがレンダーウィンドウに追加されます。これは、 Modoボーダーオフセットを計算するにはアルファチャネルが必要です。

あなたが持っているとしましょうAlpha Render OutputShading Normal Render OutputAntialasing次のように設定します。

Antialiasing両方で有効です- Modo新しいを追加しませんAlpha Render Outputレンダーウィンドウに

Antialiasingどちらか一方(両方ではない)で無効になっている- Modoを生成しますAlpha Render OutputレンダリングウィンドウでAntialiasingに一致するように設定Shading Normal Render Output

Antialiasing両方で無効です-いいえAlpha Render Outputレンダーウィンドウに追加する必要があります。

注意:  もしAlpha Render Outputは自動的に追加され、レンダリングウィンドウでのみ表示され、シーンには表示されません。

ジオメトリキャッシュをベイク

Modo仮想ジオメトリを介して機能する複数の機能があります。仮想ジオメトリは、相互作用するシーン内のジオメトリを表しますが、レンダリングに使用される実際のジオメトリの表現にすぎません。仮想ジオメトリの良い例は、サブディビジョンサーフェスモデル、ディスプレイスメント、レンダリングカーブ、ファーです。

選ぶRender >Render、またはF9、原因Modo各機能の指示を受け取り、最終的なレンダリングのためにそれらを実際のジオメトリに変換します。プロシージャルに生成されたこのレンダリング用のジオメトリは、リアルにベイクできますMeshシーン内のアイテム。複雑な手続き型ディスプレイスメントを適用したり、ファーを生成して、直接編集したり、他のパッケージにエクスポートしたりできる実際のジオメトリとしてシーンに戻すことができます。選ぶRender > Bake Geometry Cache次のダイアログを表示します。

Bake Geo Cache

オプション

説明文

Surfaces

有効にすると、元のオブジェクトのサーフェス設定が複製され、ベイクされたジオメトリに割り当てられた新しいマテリアルグループに追加されます。

Shaders

有効にすると、元のオブジェクトのアイテムごとのシェーダー設定が複製され、ベイク処理されたジオメトリに割り当てられたマテリアルグループに追加されます。

Fur

有効にすると、シーン内のすべてのファーがジオメトリに変換されます。ファーがに設定されている場合Strips、ポリゴンに変換されます。ファーがTubes個々のファイバーを表す個別のカーブに変換されます。

注意:  Curves for Furは、「Render Curves」コマンドを使用してBakeコマンドの2番目のパスを呼び出すことにより、さらにポリゴンに変換できます。

コマンドを実行すると、すべてが変換されますMesh Itemシーン内のレイヤー、およびInstancesと手続き上の影響FurRender Curves 、およびReplicators。メッシュDensity個々のアイテムの設定に基づいています(レンダリング用にテッセレーションするのとまったく同じです)。結果のメッシュは、シーン内の各サーフェスまたはエフェクトの個別のメッシュレイヤーです。

注意:  次のような特別な手続き上の効果VolumesBlobsRender Booleans 、またはSpritesメッシュに変換できません。

ヒント:  シーンの複雑さに応じて、巨大なサイズのシーンをBake Geometry Cacheコマンド。レンダー統計パネルには、各レンダー中のシーンジオメトリ全体の読みが役立つガイドラインとして表示されます。
単一の要素のみを変更する場合は、個々のメッシュレイヤーを保存するには、 Itemsリストと選択Save Selected、結果のファイルを開いて、 Bake Geometry Cacheコマンド。