次の関数は、マテリアルおよびマテリアル エディタによるマテリアルの使用に固有のものです。
マテリアル エディタのスロット 1 ~ 24 までのマテリアルを取得できます。
getMeditMaterial 関数を補完して、番号の付いたマテリアル エディタ スロットにマテリアルを配置できるようにします。
マテリアルまたはテクスチャ マップのいずれかを <material> として使用できます。
既存の 3ds Max マテリアル ライブラリ ファイルをロードします。
名前の付いた 3ds Max マテリアル ライブラリ ファイルをロードして、現在のマテリアル ライブラリにします。
ファイル名が完全な特定のディレクトリ パスを持たない場合は、この関数は現在設定されているビットマップ パスすべてを検索します。
正しくロードできた場合は true 、ロードに失敗した場合は false を返します。
現在のマテリアル ライブラリを名前付きファイルに保存します。
正しく保存できた場合は true 、保存に失敗した場合は false を返します。
このメソッドでは[ファイルを開く](File Open)ダイアログ ボックスが表示され、ユーザがロードするマテリアル ライブラリを選択することができます。
標準の[名前を付けて保存](Save File As)ダイアログ ボックスが表示され、ユーザが現在のマテリアルを保存できます。
現在のマテリアル ライブラリが以前保存された(名前が付いている)場合、このメソッドによりマテリアル ライブラリは同じファイルに保存されます。
以前に保存していない場合は、標準の[名前を付けて保存](Save File As)ダイアログ ボックスが表示され、現在のマテリアル ライブラリを保存できます。
3ds Max 8 以降 で使用可能な quiet: オプションの詳細については、「抑制モード」を参照してください。
現在のマテリアル ライブラリ ファイルの名前を文字列値として返します。
renderMap <textureMap> [into:<bitmap>] [size:<point2>] [filename:<string>] [scale:<float>][filter:<boolean>] [display:<boolean>]
マテリアル エディタで使用できる RenderMap 関数へのアクセスを提供します。
この関数は、与えられたテクスチャ マップのレンダリングを含むビットマップ値を返します。
オプションの into: 引数を指定すると、この関数は既存のビットマップからサイズとその他のアトリビュートを取り込んで、指定されたビットマップにマップをレンダリングします。指定しない場合は、 size: および fileName: 引数を使って新しいビットマップ値が作成されます。
into: および size: パラメータを指定しない場合、既定のサイズは[200,200]になります。
scale: 引数は、3D テクスチャ マップに適用されるスケール係数です。これは UV に適用される 3 次元空間におけるサーフェスのスケールであり、ビットマップ描画に表示するテクスチャの割合をコントロールします。
filter: 引数が true の場合、ビットマップはフィルタ処理されます。フィルタ処理をオンにしてビットマップを再スケールすると、処理速度が低下します。既定値は false です。
display: 引数が true の場合、結果のビットマップは仮想フレーム バッファを使用して表示されます。その他の場合、仮想フレーム バッファは使用されません。既定値は false です。
これは、シェーディングしたビューポート内のテクスチャの可視性をコントロールします。
テクスチャ マップを含むマテリアル、そのマテリアル内でコントロールされるテクスチャ マップ、表示をオンまたはオフにするブール演算を指定できます。
詳細については、「showTextureMap() function」を参照してください。
以下の 3ds Max システム グローバル変数をマテリアル エディタに適用できます。
現在開いているマテリアル ライブラリに対応するマテリアルの仮想配列と、ルート レベルのマップが含まれています。
ライブラリのマテリアルは配列のインデックスを使用して取得でき、 for ループで繰り返し使用できます。
配列は番号や名前でインデックスを付けることができ、文字列を使用してマテリアル名を選択することが可能です。
詳細については、「MaterialLibrary 値」を参照してください。
マテリアル エディタのスロットに対応するマテリアルの仮想配列とルート レベルのマップが含まれています。
マテリアル エディタのマテリアルとルート レベルのマップへは、配列のインデックスを使用してアクセスし、 for ループで繰り返し使用できます。
配列はスロット番号を指定する番号や、名前、またはマテリアルやルート レベル マップの名前を選択する文字列でインデックスできます。
この変数は読み込み専用ですが、要素(スロット内のマテリアル)は割り当て可能です。
詳細については、「MaterialLibrary 値」を参照してください。
シーン内に存在するマテリアルとルート レベルのマップに対応するマテリアルの仮想配列と、ルート レベルのマップが含まれます。シーンのマテリアルとルート レベルのマップは、配列のインデックスを使用して取得でき、 for ループで繰り返し使用できます。
配列に、番号、名前、またはマテリアルやルート レベルのマップ名を選択する文字列によってインデックスを付けることができます。
詳細については、「MaterialLibrary 値」を参照してください。
MAXScript から、マテリアル エディタのアクティブ スロットにアクセスできます。
システム グローバル変数 activeMeditSlot に、現在アクティブなマテリアル エディタ スロットのインデックスが格納されます。
この値を読み込めば、アクティブ スロットを識別したり、整数(1 ~ 24)を割り当ててアクティブ スロットを設定したりできます。