次の管理関数は custAttributes 構造体を通して使用できます。
custAttributes.count <obj> [BaseObject:<bool>]
.add() 関数により追加された個々のスクリプト カスタム アトリビュート セット数のカウントを返します。
BaseObject:<bool>
オプションのキーワード引数 baseObject が true (既定値)に設定されている場合、指定されているオブジェクトがノードであれば、そこでは基本オブジェクトが代わりに動作します。 false の場合、ノードそのものがそこで動作します。
custAttributes.get <obj> (<index> | <attrib_def>)[BaseObject:<bool>]
インデックスとして指定された、あるいはそれにより定義されるアトリビュート定義により指定された、カスタム アトリビュート セットを返します。
BaseObject:<bool>
オプションのキーワード引数 baseObject が true (既定値)に設定されている場合、指定されているオブジェクトがノードであれば、そこでは基本オブジェクトが動作します。 false の場合、ノードそのものがそこで動作します。3ds Max 5.1 より前のバージョンでは、基本オブジェクトが常に使用されていました。
custAttributes が返すカスタム アトリビュート セット値は、そのアトリビュート セット内のオブジェクトのカスタム パラメータに対する、事実上のホルダー値です。これらのパラメータ値は、アトリビュート セット値の単純なプロパティとして取得できます。
例 |
gp = custAttributes.get $ gameParams gp.hitPoints= 50 |
これは、オブジェクト上のカスタム アトリビュート パラメータに直接アクセスすることと同じです。 |
$.gameParams.hitPoints = 50 |
custAttributes.delete <obj_or_collection> (<index> | <attrib_def>) [baseObject:<bool>]
オブジェクトから、あるいは指定したコレクション内のオブジェクトすべてから、特定のカスタム アトリビュート セットを削除します。削除されるセットは、インデックス番号、またはそれが定義するアトリビュート定義によって定義されます。
BaseObject:<bool>
オプションのキーワード引数 baseObject が true (既定値)に設定されている場合、指定されているオブジェクトがノードであれば、そこでは基本オブジェクトが動作します。false の場合、ノードそのものがそこで動作します。3ds Max 5.1 より前のバージョンでは、基本オブジェクトが常に使用されていました。
custAttributes.makeUnique <obj> (<index> | <attrib_def>) [baseObject:<bool>]
カスタム アトリビュート セットを保持するオブジェクトが特定のアトリビュート定義を共有する場合、選択したオブジェクトに定義の一意なコピーを持たせることができます。
BaseObject:<bool>
オプションのキーワード引数 baseObject が true (既定値)に設定されている場合、指定されているオブジェクトがノードであれば、そこでは基本オブジェクトが動作します。 false の場合、ノードそのものがそこで動作します。3ds Max 5.1 より前のバージョンでは、基本オブジェクトが常に使用されていました。
例 |
custAttributes.add $box* def1 |
次のようにして box01 を一意にします。 |
custAttributes.makeUnique $box01 def1 |
あるいは、これらすべてを一意にします。 |
custAttributes.makeUnique $box* def1 |
custAttributes.getDef (<obj> <index>) | <custAttrib> [baseObject:<bool>]
オブジェクト内の与えられたカスタム アトリビュート セットのアトリビュート定義か、 .get() メソッドを使ってアクセスするカスタム アトリビュート セットからのアトリビュート定義を返します。
BaseObject:<bool>
オプションのキーワード引数 baseObject が true (既定値)に設定されている場合、指定されているオブジェクトがノードであれば、そこでは基本オブジェクトが動作します。 false の場合、ノードそのものがそこで動作します。3ds Max 5.1 より前のバージョンでは、基本オブジェクトが常に使用されていました。
custAttributes.getDefs <obj> [baseObject:<bool>]
定義の配列をアトリビュート セットの順に返します。
BaseObject:<bool>
オプションのキーワード引数 baseObject が true (既定値)に設定されている場合、指定されているオブジェクトがノードであれば、そこでは基本オブジェクトが動作します。 false の場合、ノードそのものがそこで動作します。3ds Max 5.1 より前のバージョンでは、基本オブジェクトが常に使用されていました。
次のトピック