Maya アプリケーションでの Python のサポートの他に、Maya ではスタンドアローン型 Python インタプリタからの Maya の Python モジュール使用もサポートしています。これはバッチ処理や、Python を使用する別のアプリケーション(MotionBuilder や Toxik など)から Maya の機能にアクセスする場合に便利です。
Autodesk では、Maya の機能をインポートするために適切に構成されたスタンドアローン型 Python インタプリタを提供しています。
Python インタプリタがロードされたら、Maya をロードして初期化する必要があります。これには、以下をウィンドウに入力します。
import maya.standalone maya.standalone.initialize( name='python' )
初期化ルーチンはパラメータを 1 つだけ(name)取りますが、このパラメータはオプションです。name パラメータは Maya にアプリケーションの名前を伝えます。name のデフォルト値は python です。
Maya がロードされ初期化されると、Maya の機能がすべて使用可能になるはずです(maya.cmds、maya.OpenMaya など)。ただし、Python インタプリタ内での Maya の実行は、Maya をバッチ モードで実行することに相当します。そのため、UI コマンドの無効化を含む通常のすべての Maya バッチ モードでの制限が存在します。
Maya の出荷時に同梱されるものとは別の Python インタプリタから Maya を使用することも可能です。ただし、Maya に同梱されている Python と同じバージョン番号を使用することをお勧めします。別のインタプリタを使用するには、適切な環境を設定することが必要です。
Mac OS X では、MAYA_LOCATION がアプリケーション バンドルの位置(../files/Maya.app/Contents)を指し示すように設定してください。
1. ../files/Maya.app/Contents/MacOS を DYLD_LIBRARY_PATH に追加して、Python が Maya の共有ライブラリを検索できるようにします。
2. ../files/Maya.app/Contents/Frameworks を DYLD_FRAMEWORK_PATH に追加して、Maya が依存しているフレームワークを Python が検索できるようにします。
3. MAYA_NO_BUNDLE_RESOURCES を何らかの値に設定します。これにより、メイン バンドルを検索する代わりに MAYA_LOCATION を介してリソースを検索するよう Maya に指示します (Maya をこの方法でバッチで実行すると、メイン バンドルは Maya のメイン バンドルではなくなります)。