最終的なサイズがわかっている場合は、配列をあらかじめ初期化しておく

MAXScript に関する質問と回答 > 処理速度を上げる方法 > 最終的なサイズがわかっている場合は、配列をあらかじめ初期化しておく

append メソッドを使用して配列に要素を追加する場合、新しい配列が作成される前に、メモリには元の配列のコピーが作成されます。実際に配列が使用される前に配列のサイズがわかっている場合、配列の最後の要素を一時的な値に割り当てることで、メモリ内の配列をあらかじめ初期化しておくことをお勧めします。これによってメモリ内には必要なサイズの配列が作成され、配列の各要素にはインデックスによってアクセスして値を割り当てていけばよくなります。したがって、append メソッドによるメモリのオーバーヘッドは起こりません。

たとえば、次のようなスクリプトがあるとします

MyArray = #()--creates an empty array
for i = 1 to 100 do
  append MyArray (random 1 100)--append each element

次のように使用できます

MyArray = #()
MyArray[100] = 0--initialize a 100 elements array in memory
for i = 1 to 100 do
  MyArray[i] = random 1 100--assign to predefined array

前のヒント

可能な場合は配列ではなく bitArray を使用する

次のヒント

再帰関数を使用する