Maya .NET SDK は 64 ビットのみで使用できます。Maya .NET プラグイン プロジェクトも x64 でコンパイルされていることを確認してください。
プラグインは、Autodesk.Maya.OpenMaya.IExtensionPlugin インタフェースを実装する必要があります。何も行わない既定の実装でもかまいません。
SDK はこのインタフェースを実装する最初のクラスを検索しますが、IExtensionPlugin の実装の検出を速くするため、.NET プラグインには次のように 1 つの ExtensionPlugin アセンブリ アトリビュートをオプションで含めることもできます。
[assembly: ExtensionPlugin(typeof(MayaNetPlugin.helloWorldPlugin), "Autodesk", "1.0", "Any")]
アセンブリ アトリビュートの詳細については、「.NET アセンブリ アトリビュートを使用する」を参照してください。
このアセンブリ アトリビュートは、通常は宣言を使用した後に、ネームスペース外部のライブラリの任意のソース ファイル内で出現できます。
プラグイン ライブラリは、任意の数のカスタム .NET コマンド、または .NET ノードを含むことができます。
Maya .NET SDK メソッドのマニュアルは IntelliSense をサポートし、コードを入力するとポップアップ表示されます。
注: - 独自のカスタム .NET プラグイン プロジェクトを作成する場合には、Maya アセンブリ リファレンスのローカル コピープロパティを false に設定する必要があります。
ローカル コピー(Copy Local)プロパティが有効になっていると(既定)、Visual Studio はコードを実行するのに必要なリファレンスを .NET プロジェクトの出力フォルダ \bin にコピーし、それらを毎回ロードします。しかし、そのプラグインは Maya で実行されるので、リファレンスは既に Maya にインストールおよびロードされており、使用可能になっています。
結果として、そのプラグインは初期化に失敗することがあります。
ローカル コピーを false に設定するには、Visual Studio のソリューション エクスプローラで、リファレンスを右クリックします。そしてプロパティを選択し、表示されたプロパティウィンドウで、ローカル コピーを false に設定します。 - Maya の bin フォルダ内にないアセンブリをプラグインが参照している場合、Maya がプラグインをロードするように、PATH 環境変数にこれらのアセンブリのパスを追加する必要があります。
== または != を使用した 2 つのオブジェクト参照の比較は、常に、意図したように動作しない可能性があります。たとえば、.NET ベース クラスから派生されるオブジェクトが新しいメモリ インスタンスに移動することがあります。Maya オブジェクトを比較するには、メンバ関数 MObject.equalEqual および MObject.notEqual を代わりに使用します。
API で公開される一部の型の名前には、swig が含まれています。これは内部使用専用であり、サポートされていません。
MDockStation クラスは、Windows コントロールで WPF コントロールをドッキングするための機能を提供します。Developer Kit をインストールしたフォルダの devkit\dotnet\wpfexamples フォルダにある DAGExplorer のサンプルを参照してください。