startObjectCreation() メソッドは、ユーザがオブジェクト クラスの[作成パネル](Create Panel)ボタンを押す動作をシミュレートするのに使われます。 これを使用すると、そのオブジェクト クラスに対する 3ds Max が作成モードになります。
このメソッドは、右タブとカテゴリを持つ[作成](Create)パネルを開き、適切なオブジェクト ボタンを押します。
このメソッドは、主にマクロ スクリプトで使用しますが、一般化されたスクリプト内でも使用できます。スクリプトの実行は、作成モードになった直後に継続されるので、オブジェクトの作成に影響を及ぼさないよう注意する必要があります。
オプションの returnNewNodes: キーワード引数には、 true 、 false (既定値)、または #first を指定できます。 true を指定すると、現在の作成モードを終了するまで、作成したすべてのノードは配列で返されます。#first を指定すると、最初に作成されたノードだけが、作成直後に返されます。この関数は、ユーザが作成モードを終了するまで待機しません。
オプションの newNodeCallback: キーワード引数は、1 つの引数のスクリプト関数を、開始される作成モードに指定できます。 この関数は、引数に新しいノードを指定してノードが作成されるたびに呼び出されます。これは、 pickObject() フィルタ関数を指定する場合に似ています。 ただし、 newNodeCallback: 関数の戻り値は無視されます。
returnNewNodes: と newNodeCallback: は、両方とも同じ呼び出しに指定できます。 コールバックは各ノードで呼び出され、それらは、 startObjectCreation() 関数の結果として配列に返されます。
指定した maxclass をユーザ インタフェースで作成できる場合は true を、作成できない場合は false を返します。引数が undefined の場合にも、 false を返します。
指定した maxclass がユーザ インタフェース上で現在作成されている場合は true を、作成されていない場合は false を返します。
引数なしで呼び出された場合、ユーザ インタフェース上で何らかのオブジェクトが作成されている場合には true を、作成されていない場合には false を返します。
3ds Max 2010 以降では、 okToCreate() との整合性のため、引数が undefined の場合にも false を返します。