チュートリアル / 宋さんの3ds Max キッチンスタジアム
第20回:Max Creation Graphを使おう!(その3)

2015.06.05

  • 3ds Max
  • Max Creation Graph
  • チュートリアル

MCG 第3回目です。
1度3ds Maxを再起動すると、作成したMCGツールは、毎回エディタで開いて評価しないと使えないのでは面倒ですよね。
そこで今回は、MCGで作成したツールをいちいちMCGエディタを開かずに、3ds Maxのインターフェースからプラグインのように使うようにするにはどうすればいいのかを説明していきます。
実は前回、前々回で作成したファイルには [.maxtool]ファイルだけではなく、コンパウンドファイルを使用している場合はそのデータファイルも必要でしたね。でも実際にはさらに複数のファイルが必要になります。
なんか複雑ですね、

MCGを実行させるためには

ここで、MCGで作成したグラフ情報を内部的にどうやって評価し3ds Max内の機能として動かしているのかを簡単に説明しましょう。

Max Creation Graph

まずは、MCGエディタを使って作成したグラフをXML形式である「.maxtool」で保存しますね。それらを実行すると、そこで使用されているコンパウンド ノードの情報もすべて同一レベルで展開され バイナリコードである.NETのエクスプレッションツリーに展開します。これを行うためにエクスプレッションツリーを[.txt]ファイルとして書き出します。最後にMAXScriptのラッパーとしてMAXScriptファイルからそれらを実行させるといったプロセスを行います。
なんかややこしいのですが、注意して欲しいのは、MCGはMAXScriptツールの作成ツールではなく、処理を実行するのはあくまでもMCGのエンジンであるという点です。
ですので、グラフを評価し実行させるためには下図の赤枠のデータファイルが必要になります。

Max Creation Graph

MCGパッケージ

作成したMax Creation Graphは単一のノードだけで構成されている場合もありますし、今開いているFirstBox.maxtoolのように コンパウンドノードを使用する場合も多いはずです。単一のノードであれば、3ds Max 2016以降をインストールしているPCであればどれでも再現できますがコンパウンドノードを使っていると、カスタムで作成したコンパウンドも使っている場合もあるので グラフの情報だけでは処理を実行できない場合があります。さらにFirstBox.maxtoolを検証、評価せずにインストールした状態で実行させるためには前記のエクスプレッション ツリーのテキスト情報と、MAXScriptファイルも必要になります。
作成したカスタムツールを別の方に配布するためには、これらの様々なデータファイルをひとまとめにしてあげる必要があるのですね。
そこでMCGでは作成したカスタムツールに対して「パッケージ化する」といコマンドを用意してあります。言い換えればMCGツールのインストーラを作成するというコマンドです。
前回作成したグラフを開いていると思いますが、この状態でグラフエディター内の ファイルメニュー>[Max クリエーション グラフ をパッケージ化...]を実行します。

Max Creation Graph Max Creation Graph

上図のように「.mcg」という拡張子を持つファイルを保存します。このファイルがMax Creation Graphで作成したツールの全情報を持つパッケージファイルとなります。
作成した後に、ファイルメニュー>[Max クリエーション グラフ をインストール...]を実行し、保存したMCGファイルを指定すれば、カスタムツールはご使用のPCで常に使用できるようになります。
そこで重要になってくるのが、インストールしたデータはどこに格納されるかです。
さてどこなのでしょうか?
MCG第一回のコラムでも書きましたが、以下のディレクトリに保存されましたね。
『C:\Users\ログインユーザー名\Autodesk\3ds Max 2016\Max Creation Graph』
このディレクトリの中身はこんな感じです。

Max Creation Graph

作成した「FirstBox」に関する様々な書類が存在しています。
実はこのディレクトリ内の[Tools]フォルダー内に「.maxtool」ファイルと「FirstBox.ms」、さらには「FirstBox.txt」を配置しておくと、3ds Max 起動時に自動的にMCGツールがロードされ使用できるようになります。
「FirstBox.txt」に関しては、.NETエクスプレッションツリーなので、評価しただけでは作成されません。実際にその機能を実行させた場合に作成されますので注意してください。
また、作成したグラフで使用するカスタムのコンパウンドノードフェイル(.compound)はCompoundフォルダー内に入れておけば、こちらも起動時にロードされ、オペレータリストの中に配置されます。

このように、MCGツールを起動させるには「.maxtool」だけでは起動ができません。
「.ms」MaxScriptファイルや「.txt」といったテキストファイルがセットで必要になりますし、カスタムのコンパウンドを使用している場合はそれらも必要になります。
結構めんどくさいかもしれませんので、ツールを配布する場合はパッケージ化させて配布するようにしましょう。
でもパッケージファイル(.mcg)をインストールしてもこのディレクトに中身が変わりません。
でも安心してくださいね。パッケージファイルをインストールすると、Toolsフォルダー内に[Download]フォルダーが作成され、必要なデータは全てその中に入り込みます。

Max Creation Graph Max Creation Graph

あと、ツールインストールで注意して欲しい点があります。実は3ds Maxのインストールディレクトリの中にもMCG関連のフォルダーが存在します。

Max Creation Graph

このフォルダーを開くと先ほど開いていたフォルダーと同じように[Compounds]というフォルダーがあります。実はこの中にカスタムのコンパウンドファイルを配置しても使用することが出来るのですが、これをやってしまうと、もしファイルに不具合があった場合の修復がとても面倒なことになるので、このフォルダーは相当慣れてくるまでは手をつけない方が安全だと思います。ご注意くださいね、

今回はMCGの内部的な処理の流れや、作成したツールの配布方法などにについて触れてみました。
ちょっと地味な内容だったので、次回はいよいよカスタムモディファイヤの作成を行っていきましょう!
ではでは。

製品購入に関するお問い合わせ
オートデスク メディア&エンターテインメント 製品のご購入に関してご連絡を希望される場合は、こちらからお問い合わせください。