スクリプト化されたベイク マップ プラグイン

スクリプト化された共通ベイク マップ プラグインは、BakeToTextureMap を拡張し、それによって所有されます。これらのプラグインは、ユーザの視点からはすべてのレンダラーで同じように見えるベイク処理要素の統一されたビューを提供します。サポートされる各レンダラーのレンダラー固有のロジックは、コンパニオン CommonBakeMapOperator に格納されています。このコンパニオンは、ベイク処理環境を設定し、実際に使用されるベイク処理要素を指定します。

3ds Max に付属の既定の共通ベイク マップは $startupScripts/BTT にあり、このタイプのプラグインの実装例を探す場合に適しています。

スクリプト化された共通ベイク マップ プラグインを宣言するには、<superclass>CommonBakeMap として指定します。

共通ベイク マップ プラグインは、ロールアウトの説明で extendedUi: true で示される特別な拡張ユーザ インタフェースを実装します。この UI は、基盤となる UI フレームワークとして従来の Win32 の代わりに Qt を使用し、拡張された Qt ウィジェットのプロパティとレイアウトにアクセスできるようにします。詳細については、「[テクスチャにベイク処理](Bake To Texture)ロールアウト コントロール」を参照してください。

注:

拡張 UI は、共通ベイク マップ プラグインでのみ使用することを目的としており、その他のタイプのロールアウトではサポートされていません。

例については、「スクリプト化された[テクスチャにベイク処理](Bake To Texture)プラグインの例」を参照してください

CommonBakeMap クラス

次のオプションのキーワードを CommonBakeMap 宣言で使用できます。

tooltTip : string

[テクスチャにベイク処理(Bake To Texture)]ツリービューでベイク マップ上にマウスを置いたときに表示されるツールチップ文字列を定義します。

useGamma : bool

共通ベイク マップが UI にガンマ設定を表示するかどうかを示します。

backgroundColor : point3

ベイク処理されたイメージの既定のバックグラウンド カラーを指定します。

CommonBakeMapOperator Class

CommonBakeMapOperator プラグイン クラスは、マップのベイク処理環境を初期化および初期化解除するレンダラー固有のハンドラです。

キーワード

CommonBakeMapOperator 宣言の必須キーワードは次のとおりです。

commonMapClassID : 2 element array

このベイク マップ オペレータが属する CommonBakeMap のクラス ID。

rendererClassID : 2 element array

このベイク マップ オペレータがベイク処理を実行するレンダラー クラス ID です。

次に、オプションのキーワードを示します。

bakeElementClassID : 2 element array

ベイク処理で使用されるベイク処理要素のクラス ID です。ベイク処理要素は、プラグイン記述レベルのキーワードを使用して静的に定義するか、ベイク処理要素が何らかのオペレータ内部ロジックに依存している場合は、bakeElementClassID() コールバックを使用して動的に提供することもできます。プラグイン クラス キーワードとして定義されている bakeElementClassID がない場合、これはベイク処理の前に呼び出されます。

プロパティ

CommonBakeMapOperator クラスでは次のプロパティを使用できます。

bttMap : BakeToTextureMap : Read only

このベイク オペレータが参照するテクスチャ マップへのベイク処理です。パラメータも含め、一般的なベイク マップ インタフェースにアクセスできます。

commonMap : MAXWrapperObject : Read only

このベイク オペレータが属する共通のベイク処理マップ。オブジェクト参照を使用すると、共通のベイク マップで定義されたパラメータにアクセスできます。

イベントのコールバック

preBake( bakeElem : BakeElementProperties) : void

このコールバックは、ベイク処理プロセスが開始される直前に呼び出されれます。これは、ベイク処理環境のレンダラー固有およびマップ固有の設定を行うために使用できます。パラメータ bakeElement は、ベイク処理に使用されるベイク処理要素のインスタンスです。

postBake() : void

このコールバックは、ベイク処理が完了したときに呼び出されます。これを使用して、preBake コールバックで行った変更をリセットできます。

requireSceneChange() : bool

シーンの変更が必要なプロパティに従ってマップをグループ化するために、ベイク処理の前に BTT から呼び出されます。マップが true を返した場合でも、同じパラメータを持つ同じタイプのマップでグループ化されます。

bakeElementClassID() : 2 element array

ベイク処理に使用されるベイク処理要素のクラス ID です。プラグイン記述レベルでキーワードを使用してベイク処理要素が定義されていない場合は、ダイナミック コールバック bakeElementClassID を実装する必要があります。これはベイク処理の前に呼び出されるため、[テクスチャにベイク処理(Bake To Texture)]は作成する必要があるベイク処理要素を認識します。