コマンド ラインからのスクリプトの実行

3ds Max を DOS コマンド ラインから起動し、3ds Max で指定の起動スクリプトを実行することができます。これは、ユーザがコンピュータの前から離れてレンダリングのバッチ処理などのタスクを行う場合に便利です。この機能では、既存のコマンド ラインの -U スイッチを使用し、これにより 3ds Max の起動時に実行するユーティリティの名前を指定できます。-U スイッチを使用すると、MAXScript で実行する起動スクリプト名となるオプションの引数を使用できます。MAXScript では、次のように大文字と小文字を区別する必要があります。

c:\3dsmax\3dsmax -U MAXScript rendercams.ms

このコマンド ラインの例では、c:3dsmax にある 3ds Max 実行可能プログラムを起動し、MAXScript を起動してから MAXScript で起動スクリプトrendercams.ms を実行します。

次に示す起動スクリプトの例では 2 つのシーンを読み込み、その中にある各カメラからフレームをレンダリングし、3ds Max を終了します。

loadMaxFile "foo.max"
for c in cameras do render camera:c outputfile:("foo_"+c.name+".bmp")
loadMaxFile "baz.max"
for c in cameras do render camera:c outputfile:("baz_"+c.name+".bmp")
quitMax #noPrompt

この例では、スクリプト終了時に 3ds Max を終了(「3ds Max の終了およびリセット」を参照)する quitMax() メソッドを利用しています。この例のように起動スクリプトがバッチ スクリプトである必要はありませんが、シーン ファイルを読み込んで ユーザ インタフェース オプションを設定することで、3ds Max をインタラクティブに使用するのに役立つこともあります。

通常のスタートアップ スクリプトstartup.ms やスタートアップ スクリプト ディレクトリにあるスクリプトは、起動スクリプトの前に実行されます。

シーンの開閉時または特定のイベントの発生時に自動的に実行する個別のシーン ファイルに、スクリプトを挿入することもできます。詳細は、「一般イベント コールバック機能」を参照してください。

注:コマンド ライン -U MAXScript スタートアップ スクリプトは、3ds Max が完全に起動し、標準 MAXScript stdscripts および scripts¥startup が実行された「後」で実行されます。