>   >  スクリプト兵法書 〜MAX Script編〜:Vol.2:はじめてのMAXScript
Vol.2:はじめてのMAXScript

Vol.2:はじめてのMAXScript

前回はイントロダクションということで、なぜスクリプトを書くのか、スクリプトを書くことによってどんなメリットが得られるのかについて紹介しました。今回からは、本格的に MAXScript の勉強をしていきましょう。デザイナーの方にはプログラミングに対して苦手意識を持たれる方が多いですが、できるだけ分かりやすい解説を心掛けていきますので、ぜひ御一読ください。

MAXScriptリスナーとMAXScriptエディタ

標準でインストールされる MAXScript のリファレンスは英語版しか用意されていません。「英語なんかヘッチャラ!」という方なら英語環境で頑張って頂ければと思いますが、そうでない方はオートデスクの「Autodesk 3ds Max サービス&サポート」から日本語版のリファレンスを入手しましょう。
上記サイトの「3ds Max 2010、3ds Max Design 2010 MAXScript 日本語リファレンス」からダウンロードします。

3ds Max には、ユーザーが Max を操作した履歴を見ることができる「MAXScriptリスナー」とMax 上でスクリプトを書くための「MAXScriptエディタ」があります。
本格的なスクリプトを書く場合は MAXScriptエディタでは機能が十分ではなく不便な所もありますが、書いたスクリプトをその場ですぐ試すことができるのでとても重宝します。

まずは試しに、MAXScriptリスナーで履歴を見てみましょう。メニューの[ MAXScript(M)/MAXScriptリスナー(L)... ]からMAXScriptリスナーを開き、マクロレコーダを使用可能にします。

MAXScriptリスナーのUI

使用可能にしたら、GUIからボックスをいくつか作ってみます。すると、MAXScriptリスナーの上段に何やら文字列が出てきます。これが、今あなたが Max を操作した履歴です。

MAXScriptリスナーの履歴を表示

では、この内容をMAXScriptエディタにコピー&ペーストして実行してみます。
まずは新しいシーンを作成して、MAXScriptエディタの[ツール(T)/全てを評価(A)]を実行します。
どうでしょう? 先ほど手で作成したものと同じオブジェクトが作成されましたね? ようこそ、MAXScript の世界へ!

MAXScriptリスナーのコマンドを実行

と思いきや、表示されている色が違いますね。この色は、オブジェクトを作る時に Max が自動的にしていしているためです。もちろん、色を統一する必要があるときはスクリプトで指定することもできます。MAXScriptリスナーについての詳しい情報は、先ほどダウンロードしたマニュアルの[ [MAXScript リスナー]ウィンドウ]の項目を参照してみてください。

この MAXScript リスナーを上手に使うと、プログラマーとのコミュニケーションがスムーズに行えるようになります。データの変換など、単純だけれども大量に処理をしなければいけない仕事が来た時にひと通り作業を見てもらいながら、同時にリスナーーでログを取ってプログラマーに渡します。そうすれば CG ソフトのオペレーションに詳しくないプログラマーでも、何をしなければいけないのか簡単に理解することができます。

この方法の一番の利点は、MAXScriptリスナーが翻訳者となって、プログラミングが不得意なデザイナーとCGソフトの扱いが不得意なプログラマーの会話をすることができることです。実際に、筆者も仕事で同じような方法で作ったスクリプトをデザイナーに使ってもらったことが多々あります。
そのようなやりとりをしていると、作った私自身そのプログラムをどうやって使うのか知らないということもありました(笑)。同様に、デザイナーもプログラムが中で何をやっているのか理解していません。それなのにきちんと成果が上がっていたというのがとても面白い現象です。

その他の連載