このトピックでは、Max Creation Graph Editor で作業するための基本的な方法について説明します。
注: Max クリエーション グラフ エディタ内のほとんどの関数は元に戻せません。したがって、後で復元する必要がある場合は、一般的にはステートのグラフを保存することをお勧めします。
グラフにノードを追加する
重要: ノードの簡単な説明を表示するには、リストまたはグラフ内でノードのタイトル バーまたは名前の上にマウス カーソルを合わせます。しばらくすると、マウス カーソルにアタッチされたツールチップに説明が表示されます。
[オペレータの説明](Operator Description)ペインでより詳しい説明を表示するには、[オペレータ ノード](Operator Nodes)リストまたはグラフ内のノードをクリックします。
- グラフ ウィンドウに対するエディタの左側の[オペレータ ノード](Operator Nodes)リスト内で使用するノードを見つけ、グラフ ウィンドウにドラッグします。特定のノードをすばやく検索するには、リストのすぐ上にある検索フィールドに名前の一部を入力します。検索文字列の前にアスタリスク(*)を付けると、ノード名の任意の場所にある文字列を検索します。
- [オペレータ ノード](Operator Nodes)リストのノードをダブル クリックします。これによりグラフ ウィンドウの中心にノードが追加されます。
- ノードを作成し、同時にワイヤリングするには、グラフ内のノードのコネクタからグラフ ウィンドウの空のスポットにドラッグします。マウス ボタンを離すと、互換性のあるノードのリストが表示されます。キーボードから目的のノードの名前の一部を入力すると、リストを絞り込むことができます。このリストからノードを選択すると、既にワイヤリングされているグラフに追加されます。注: 選択したノードに互換性のあるコネクタが複数ある場合は、マウス ポインタの位置にリストが表示されるので、使用するコネクタをクリックします。
- [検索]ダイアログ ボックスをすべてのノードのアルファベット順リストで開くには、X を入力します。オプションで、リストを検索文字列に一致する項目に制限するには、ノード名の任意の部分を入力します。次に必要に応じてリストをスクロールして目的のノードを検索し、次のいずれかの方法でグラフにノードを追加します。
- リスト内のノード名をクリックします。
- 上または下矢印キーを使用してリストのノード名をハイライトし、[Enter]を押します。
グラフに同じタイプのノードを追加した後は、グラフ内の名前に、0 ではじまり各ノードごとに 1 ずつ増加する一意の数値 ID が付きます。デバッグ メッセージでは、エラーが発生した特定のノードを検索できるようにするために、この数字を参照します。
注: ノードの追加または削除などによりグラフの内容を変更すると、ウィンドウ タブのグラフの名前の横に未保存の変更を示すアスタリスクが表示されます。データの損失を最小限に抑えるため、グラフを定期的に保存します。
または、次に説明するように Max クリエーション グラフで自動的に既存のノードに対する入力とパラメータ ノードを生成することができます。
ノードの入力またはパラメータを自動的に生成する
ほとんどのノードに対し、1 つまたは複数の入力またはパラメータが必要になります。入力は、グラフ内で定義される取り込み値です。パラメータは、ユーザがツールのユーザ インタフェースで定義する取り込み値です。Max クリエーション グラフは、任意のノードの空の入力コネクタに対して適切な入力とパラメータ ノードをすばやく簡単に作成することができます。
- 入力またはパラメータを生成するノードを選択します。
- グラフ ウィンドウ内で右クリックして、[入力を生成](Generate Inputs)または[パラメータを生成](Generate Parameters)を選択します。
Max クリエーション グラフは、選択したノードの適切な入力コネクタに互換性のあるノードとワイヤリングを作成します。
グラフ内のノードを複製する
- [Shift]を押したまま、グラフ ウィンドウ内の既存のノードをドラッグします。
- グラフ ウィンドウで 1 つまたは複数のノードを選択してから、次のいずれかの操作を行います。
他の 2 つのノード間のワイヤにノードを挿入する
グラフからノードを削除する
- [Alt]キーを押しながらノードを現在の位置からドラッグして離します。ドラッグしてそのノードがワイヤ接続から削除されたら、マウス ボタンを離します。残りの 2 つのノード間の接続がまだ有効な場合、それらはワイヤリングされたままになります。
グラフ ウィンドウのタブを使用して作業する
既定では、グラフ エディタ(Graph Editor)に単一のビューとそれに関連付けられたタブが表示されます。新しいビューの作成、別のビュー内の各ビューの内容の保存、タブ間のノードの移動や複製などができます。
- 新しいタブを追加するには、次のいずれかの操作を行います。
- メイン メニューバーで[カーボン](Carbon)メニューを開き、[新規グラフ](New Graph)を選択します。
- 既存のタブの横にある空白領域を右クリックし、[新規ビューを作成](Create New View)を選択します。
- グラフ エディタの[ファイル](File)メニューを開き、[新規作成](New)を選択します。
既定では、新しいタブにはタイトルなしという名前が付きます。タブの名前を変更するには、XML ファイルにグラフを保存します(次を参照)。これを行うと、ファイル名がタブに表示されます。
- グラフを XML ファイルとして保存するには、次のいずれかの操作を行います。
- 保存するグラフのタブをアクティブにしてから、[ファイル](File)メニューを開いて[保存](Save)または[名前を付けて保存](Save As)を選択します。
- 保存するグラフのタブを右クリックし、[保存](Save)または[名前を付けて保存](Save As)を選択します。
- すべてのタブのドッキング位置(左/右/上/下)を変更するには、既存のタブの横にある空白の領域を右クリックし、コンテキスト メニューから目的のオプションを選択します。
- タブに移動するには、目的の場所にドラッグします。
- ビューを閉じるには、タブの名前の横にある X ボタンをクリックするか、中ボタンでタブをクリックします。ビューのグラフに未保存の変更が含まれている場合、保存するかどうかを尋ねるメッセージが表示されます。
グラフ ウィンドウのグループ ノードを使用して作業する
グループを使用すると、グラフを整理したり、グラフに説明とコメントを追加したりできます。
- 1 つまたは複数のノードをグループ化するには、それらを選択して右クリックし、[グループ ノードを作成](Create Group Node)を選択します。選択はグループノードとオペレータノードの任意の組み合わせにすることができます。任意の範囲までグループノードをネストすることができます。
これは、既定のタイトルのグループで選択されたノードを含むグループを作成します。
- グループノードの名前を変更するには、タイトルをダブル クリックしてキーボードを使用します。
- グループノードに説明テキストを追加するには、ノード内の空の領域をダブル クリックします。これにより縁取りのあるテキスト ボックスが作成されます。キーボードとマウスを使用して、標準的なテキスト エディタと同様に文字を入力および編集します。編集を終了するには、テキスト ボックスの外側をクリックします。
- グループ ノードの色を変更するには、ノードを右クリックして[バックグラウンド カラーを変更](Change Background Color)を選択します。[カラーセレクタ](Color Selector)ダイアログ ボックスを使用して新しい色を選択します。
- ノードをグループ ノード移動するには、グループ ノードの背景がハイライト表示されるようにグループ ノードにドラッグして、マウス ボタンを離します。
- ノードをグループ ノードから削除するには、ノードを選択して右クリックし、[グループから選択項目を削除](Remove Selected From Group)を選択します。その後、必要に応じてノードをグループ ノードの外にドラッグできます。
- グループ ノード内でノードを再配置するには、それらをドラッグします。グループ ノードの境界に向かってノードを移動すると、必要に応じて合うようにノードを拡大します。
ヒント: 既定では、ノードをグループ ノードの境界から離れた場所に移動してもノードのサイズを小さくなりませんが、必要に応じてこの動作を選択することもできます。グループ ノードを右クリックし、コンテキスト メニューの[コンテンツに自動フィット](Auto Fit To Content)をオンにします。
ノードをワイヤリングおよびワイヤリング解除する
グラフ ウィンドウにノードを配置し、ワイヤで接続してグラフを作成します。エディタ内でワイヤはデータ フローの方向を指している矢印として描画されます。各矢印は、接続されている出力コネクタの色を採用します。
- 2 つのノードを一緒にワイヤリングするには、片方の出力コネクタともう一方の入力コネクタ間をドラッグします。ドラッグする方向は関係ありません。データは常に入力コネクタから出力コネクタに流れます。1 つの出力を、任意の数の入力にワイヤリングすることができますが、その逆はできません。既に別のノードに接続されている入力コネクタにノードをワイヤリングすると、1 番目の接続を自動的に削除します。
重要: 2 つのコネクタをワイヤリングするには、それらの色によって表される同じデータ タイプを使用している必要があります。唯一の例外は、他のすべてのタイプのコネクタに接続できる緑のコネクタです。
- ノードを作成して同時にワイヤリングするには、コネクタから空のスポットにドラッグします。マウス ボタンを離すと、互換性のあるノードを選択および検索するための小さいダイアログ ボックスが開きます。目的のノードを選択すると、グラフに追加され、このときすでにワイヤリングされています。注: 選択したノードに互換性のある入力コネクタが複数ある場合は、マウス ポインタの位置にリストが表示されるので、使用するコネクタをクリックします。
- ワイヤを削除するには、次のいずれかの方法を実行します。
- ワイヤを右クリックし、[エッジを切断](Disconnect Edge)を選択します。
- 標準的な方法(ビューポートでオブジェクトを選択するのと同様)を使用して、任意の数のワイヤを選択します。次に、[Delete]キーを押します。
ノードを削除する
- 1 つまたは複数のノードを削除するには、それらを選択してから次のいずれかを実行します。
- キーボードの [Delete]キーを押します。
- 右クリックして[選択を削除](Delete Selection)を選択します。
- [編集](Edit)メニューを開き、[削除](Delete)を選択します。
Max クリエーション グラフ パッケージの使用および変更:
パッケージは、カスタム合成などのすべての従属を含む自己完結型の MCG グラフです。パッケージは、MCG グラフ エディタを開かずに、カスタム ツールを簡単にインストールして使用できるように設計されています。ただし、グラフを検査して修正する場合は、次の手順を使用してグラフにアクセスしてください。
- 次のいずれかのメニュー コマンドを使用して、ツールをインストールします。これにより、ツールが適切な UI の場所に配置されて使用できるようになります。
- [スクリプト](Scripting)(または[Enhanced Menus]では[スクリプト](Script))メニュー
[Max クリエーション グラフ(.mcg)パッケージをインストール](Install Max Creation Graph (.mcg) Package)
- Max クリエーション グラフ エディタ
[ファイル](File)メニュー
[Max クリエーション グラフをインストール](Install Max Creation Graph)
パッケージをインストールした後は、ツールを修正したい場合などに、グラフを開いて表示することができます。
- いずれかのメニューの場所から Open Graph コマンドを使用します。
- C:\Users\[username]\Autodesk\3ds Max 2016\Max Creation Graph\Tools\Downloads フォルダに移動します。
- インストールしたツールと同じ名前の .maxtool ファイル(たとえば PushRandom.maxtool)を検索して開きます。
注: ツールに合成が含まれている場合は、ダウンロード フォルダ内の \[toolname]\Compounds\ で見つけることができます。 上の例の場合、これは \PushRandom\Compounds\ フォルダになります。
MAXScript スクリプト内から手続き型グラフを使用する
- 次のスクリプト フラグメント(コメントを含む)で、グラフ ファイルをロードしてコンパイルすることができます。
bridgePath = (symbolicPaths.getPathValue "$max") + @"\Viper3dsMaxBridge.dll"
dotNet.loadAssembly bridgePath // load the .NET Assembly that contains the class and method that loads a graph xml
bridge = dotNetClass "Viper3dsMaxBridge.Main" // create an instance of the class called Main
bridge.CompileGraph <path to the xml graph file> // call Main.CompileGraph() to load and compile a given graph file