MAXScript のカスタム アトリビュートが、ノードやシーンのルートノードを含むあらゆるタイプの MAX オブジェクトに適用されるようになりました。ただし、カスタム アトリビュートに関連するロールアウトは、マテリアル、モディファイヤ、および基本オブジェクトに対してのみ表示されます。
.custAttributes プロパティは、3ds Max 5.1 で MAXWrapper に追加されました。ここには、オブジェクトに割り当てられたカスタム アトリビュートの仮想配列が含まれています。この仮想配列上では、join および sort を除き、標準の配列メソッドと演算を実行できます。
仮想配列のクラスは MSCustAttribArray です。
サポートされている演算は次のとおりです。
findItem < MSCustAttribArray > < cust_attrib > 指定された仮想配列内で所定のカスタム アトリビュートを検索します。
< MSCustAttribArray > [< integer > | < cust_attrib_name >]インデックスまたは名前によってカスタム アトリビュートを取得します。
< MSCustAttribArray > [< integer > | < cust_attrib_name >] = < cust_attrib >インデックスまたは名前によってカスタム アトリビュートを設定します。
NULLまたは未定義の値は MSCustAttribArray 内には保存できません。したがって、既存のカスタム アトリビュートの数を上回るインデックスによる書き込みを実行すると、カスタム アトリビュートが MSCustAttribArray に追加されます。
append < MSCustAttribArray > < cust_attrib > 仮想配列の末尾にカスタム アトリビュートが追加されます。
deleteItem < MSCustAttribArray > (< cust_attrib > | < cust_attrib_name >)カスタム アトリビュートかその名前を指定することで、カスタム アトリビュートを仮想配列から削除します。
MSCustAttribArray にマップすることもできます。
<MSCustAttribArray>.ownerこのカスタム アトリビュート配列の所有者を返します。3ds Max 2019.3 Update 以降で使用可能です。
t = teapot()
cac = t.baseobject.custAttributes
o = cac.owner
--> Teapot
o == t
--> true次のトピック