addModifier() または modPanel.addModToSelection() メソッドを使用して、オブジェクトのモディファイヤ スタックにモディファイヤや SpacewarpModifier の一連のクラスを作成および追加できます。特に記載しない限り、モディファイヤという用語はいずれかのクラスのメンバという意味で使用されます。
単一のモディファイヤを作成し、これをいくつかのオブジェクトに追加することによって、オブジェクト間でこのモディファイヤを共有できます。これは 3ds Max ユーザ インタフェースのオブジェクトの選択にモディファイヤを適用する場合と同様です。以下のクラスのコンストラクタは、示されている既定値を持つオプション キーワード引数として、表のいずれのプロパティでも取得できます。
<node> へのプロパティ アクセス。 <node> シーン オブジェクト上の名前、位置、または長さなどのプロパティにアクセスすると、MAXScript ではオブジェクト上のモディファイヤもプロパティとして認識されます。たとえば、次のようになります。
このように、モディファイヤのサブプロパティとしてモディファイヤ プロパティにアクセスできます。モディファイヤ名の中に空白があるとき、パス名の場合と同様に _ を空白として使用できます。次のようになります。
これは単純な状況では動作しますが、同名のモディファイヤが複数存在したり、(常に最初に検索される) 作成パラメータと同じ名前のモディファイヤが存在する場合があります。この場合は、モディファイヤ配列メカニズムを使用します。これにより、インデックス付けできるモディファイヤ配列が生成されます。
$box1.modifiers--モディファイヤ配列を取得 $box1.modifiers[3]-- リストの 3 番目にあるモディファイヤ配列を取得 $box1.modifiers[#twist]-- 「twist」という名前のモディファイヤ配列を取得 $box1.modifiers["ffd 4x4x4"]-- FFD を取得
この例でわかるように、テーブル内の名前でのモディファイヤのインデックス処理には名称リテラルと文字列の両方が使用できます。このようにして、MAXScript プロパティ名では使用できない文字を含んだモディファイヤを取得できます。
番号は[修正]パネル内に表示される順番と同じで、上から下に向かって 1 から数字を振ったものになります。
モディファイヤと SpacewarpModifier クラスから直接派生するクラスの詳細は、「モディファイヤおよび SpacewarpModifier のタイプ」を参照してください。
モディファイヤと SpacewarpModifier クラスから直接派生するすべてのクラスに共通のプロパティ、演算子、メソッドの詳細は、「モディファイヤの共通プロパティ、演算子、メソッド」を参照してください。
モディファイヤと SpacewarpModifier クラスは MAXWrapper クラスから派生し、このクラスのプロパティとメソッドを継承します。これらのプロパティおよびメソッドについては、「MAXWrapper の共通プロパティ、演算子、メソッド」を参照してください。