外部ソースからカスタム プラグイン ノードを経由してディペンデンシー グラフまでデータ ストリームを行えるようにするために、プロキシ クラス MPxThreadedDeviceNode および MPxClientDeviceNode が追加されました。次に示す Maya2013/devkit/plug-ins/ にある新しいサンプルで、これらのクラスの使用方法を説明しています。
Maya のドラッグ アンド ドロップ機能にコールバック フックを提供するために、新しいクラスが追加されました。
ビューポート 2.0 内のインデックス バッファと頂点バッファを使用して作業するために、MHWRender ネームスペースに新しいクラスのグループが追加されました。
新しいアトリビュート パターン API クラスが追加されました。
プラグインの配布可能な配置を簡単に作成できるようになりました。現場の管理者はネットワーク上のフォルダとして、モジュール説明ファイルとともにプラグインをセットアップできます。各ユーザのマシンは、MAYA_MODULE_PATH 環境変数を使用してモジュール説明ファイルを示す必要があります。これにより、Maya のバージョンやプラットフォームが複数存在する場合でも、プラグインを簡単に変更できます。
複数のバージョンのプラグインがサポートされました。使用するバージョンは、現在のオペレーティング システム、Maya のバージョン、および言語設定(ロケール)の組み合わせで決まります。新しいモジュール ファイルの構文の詳細は、次のセクションで解説します。
詳細については、次を参照してください。
注: 「devkit/plug-ins」フォルダの再編成により、プラグインに関連付けられているファイルは 1 つのフォルダ内にまとめられ、プラグイン プロジェクトは「Plug-ins.sln」と呼ばれる 1 つのペアレント ソリューション ファイル内にペアレント化されました。
これまでディペンデンシー ノードであった imagePlane ノードが、シェイプ ノード(つまり、DAG ノード)となりました。これにより、スクリプトおよびプラグインへの変更が必要な場合があります。
imagePlane ノードの作成に MFnDependencyNode を使用していた場合は、代わりに MFnDagNode を使用するようにコードを変更する必要があります。同様に、imagePlane ノードの作成または削除に MDGModifier を使用していた場合は、代わりに MDagModifier を使用する必要があります。
imagePlane ノードを削除するスクリプトおよびプラグインでは、親トランスフォームをクリーン アップする追加作業が必要な場合があります。
さらに、一部の標準 DAG ノード アトリビュートとの衝突を回避するために、次の imagePlane アトリビュートの名前が変更されました。
変更前の名前 | 変更後の名前 |
center (c) | imageCenter (ic) |
centerX (cx) | imageCenterX (icx) |
centerY (cy) | imageCenterY (icy) |
centerZ (cz) | imageCenterZ (icz) |
変更前の名前で子アトリビュートを参照するスクリプトおよびプラグインは動作しなくなりました。
変更前の名前(center)で親アトリビュートを参照するスクリプトおよびプラグインは動作するように見えますが、イメージ プレーンの中心位置ではなく、ノードのバウンディング ボックスの中心位置に戻ります。これらは異なる場合があります。