Mac OS X 環境

 
 
 

Maya Development Kit は、Maya の標準インストールでは /Applications/Autodesk/maya2013/devkit/ ディレクトリに配置されます。

Maya プラグイン

Mac OS X 上でプラグインをビルドするには 2 つの方法があります。devkit に用意されている Xcode、または Makefile を使用することができます。

Makefiles を使ってビルドする

Maya Development Kit には多数のサンプル プラグインが収録されており、/Applications/Autodesk/maya2013/devkit/plug-ins に保存されています。 これらのプラグインは、使用する前にビルドする必要があります。最初の手順は MAYA_LOCATION を定義することです。 Maya がインストールされたディレクトリを指定する環境変数。 コマンドライン シェルが shbash、または ksh の場合、コマンドは次のようになります。

MAYA_LOCATION=/Applications/Autodesk/maya2013/Maya.app/Contents
export MAYA_LOCATION

ログインするたびに MAYA_LOCATION をリセットしたくない場合は、これらのコマンドを $HOME/.profile にも追加します。

コマンドライン シェルが csh、または tcsh の場合、コマンドは次のようになります。

setenv MAYA_LOCATION /Applications/Autodesk/maya2013/Maya.app/Contents

同様にこのコマンドを $HOME/.cshrc に追加することで、ログインするたびにリセットする必要がなくなります。

通常は、Maya の devkit のインストール ディレクトリへの書き込み権限がないため、ローカルの作業ディレクトリを作成し、プラグインのソースをコピーしなければなりません。

mkdir -p $HOME/devkit/plug-ins
cd $HOME/devkit/plug-ins
cp -r /Applications/Autodesk/maya2013/devkit/plug-ins/* .

以上で、プラグインのビルドの準備が完了しました。

make Clean
make

Maya では、プラグインとその関連ファイルを検索するためのいくつかの環境変数が必要です。 その変数は以下のとおりです。

  • MAYA_PLUG_IN_PATH - プラグインを検索するディレクトリ
  • MAYA_SCRIPT_PATH - MEL および Python スクリプトを検索するディレクトリ
  • XBMLANGPATH - アイコンを検索するディレクトリ

これらの変数は、Maya.env というファイルで定義できます。Maya.env を使用すると、単にファイルをコピーするだけで別のシステムに同じランタイム環境をセットアップすることができます。 コマンド ラインからこれらの変数の明示的な値を設定し、Maya.env で与えられた値の先頭に付加することもできます。

C++ のプラグインはそれぞれ $HOME/devkit/plug-ins の専用のサブディレクトリに常駐していますが、Python のプラグインはすべて scripted という名前の共通ディレクトリに常駐しています。 前述の環境変数に Maya からアクセスしたいすべてのプラグインのディレクトリを追加しなければなりません。 たとえば、Maya から circleNode および whatisCmd C++ のプラグインにアクセスするには、Maya.env ファイルに以下を含める必要があります。

MAYA_PLUG_IN_PATH = $HOME/devkit/plug-ins/circleNode:$HOME/devkit/plug-ins/whatisCmd
MAYA_SCRIPT_PATH = $HOME/devkit/plug-ins/circleNode:$HOME/devkit/plug-ins/whatisCmd
XBMLANGPATH = $HOME/devkit/plug-ins/circleNode/%B:$HOME/devkit/plug-ins/whatisCmd/%B

ここで Maya を起動し、プラグイン マネージャ(Plug-in Manager)ウィンドウを開くと、circleNode および whatisCmd プラグインがそれぞれのセクションにリストされます。 この方法は、使用するプラグインの数が多い場合には効率的ではありません。そこで、共通のディレクトリを作成してそこに各種のファイルをコピーします。 たとえば、Maya からすべての devkit プラグインにアクセスするには、次のように実行します。

mkdir plug-ins scripts icons
cp */*.bundle plug-ins
cp */*.mel */*.py scripts
cp */*.png */*.xpm */*.cur */*.rgb icons

次に、これらの共通ディレクトリを使用するように Maya.env ファイルを設定します。

MAYA_PLUG_IN_PATH = $HOME/devkit/plug-ins/plug-ins
MAYA_SCRIPT_PATH = $HOME/devkit/plug-ins/scripts
XBMLANGPATH = $HOME/devkit/plug-ins/icons/%B

これで、Maya を起動してプラグイン マネージャを選択すると、すべての devkit プラグインが共通セクションに表示されます。

環境変数 MAYA_APP_DIR を使用すると、Maya.env ファイルを検索できるようになります。この変数を設定しないと、Maya は $HOME/Library/Preferences/Autodesk/maya ディレクトリを検索します。 複数のバージョンの Maya をシステムにインストールしている場合は、MAYA_APP_DIR 環境変数が指すディレクトリのバージョン管理されたサブディレクトリか $HOME/Library/Preferences/Autodesk/maya のバージョン管理されたサブディレクトリに Maya.env ファイルを配置できます。 たとえば MAYA_APP_DIR/usr/mydir に設定した場合は、Maya.env ファイルを /usr/mydir/2013 ディレクトリに作成することができ、Maya の 2013 バージョンを実行するときにこのファイルが使用されます。 MAYA_APP_DIR を設定しない場合は、2013 バージョンの Maya.env ファイルを $HOME/Library/Preferences/Autodesk/maya/2013 に置くことができます。

プラグインのファイルを指すように環境変数を設定する代りに、起動時に Maya が自動的に変数に追加するディレクトリにファイルをコピーすることができます。 どのファイルが自動的に追加されるのかを知る最も簡単な方法は、Maya のスクリプト エディタの内部から getenv コマンドを使用することです。 E.g:

getenv MAYA_PLUG_IN_PATH

Xcode プロジェクト ファイルを使ってビルドする

Xcode を使用してサンプルのプラグインの 1 つをビルドするには、Maya を実行するのと同じバージョンの Mac OS X を使用し、Xcode アプリケーションをインストールしなければなりません。 それから次を実行します。

  1. /Applications/Autodesk/maya2013/devkit/plug-ins を参照します。
  2. ビルドしたいプラグインを含んでいるサブディレクトリのコピーを作成します。 たとえば circleNode プラグインをビルドしたい場合は、/Applications/Autodesk/maya2013/devkit/plug-ins/circleNode のコピーを作成します。
  3. ディレクトリのコピーを参照し、プラグインの Xcode プロジェクト ファイル(たとえばcircleNode.xcodeproj)をダブルクリックします。
  4. Build メニューから Build オプションを選択します。ビルドされたプラグインは、拡張子が .bundle で、ビルドに使用した設定の下の build サブディレクトリに配置されます。 たとえば、手順 2 で circleNode プラグインを $HOME/myCircleNode にコピーし、Debug 設定を使用してビルドした場合、プラグインは $HOME/myCircleNode/build/Debug/circleNode.bundle に配置されます。

Maya でプラグインを検索できるようにするには、そのファイルを含むディレクトリを指すいくつかの環境変数を設定しなければなりません。 circleNode プラグインをサンプルとして使用する場合、Maya.env ファイルに以下を配置します。

MAYA_PLUG_IN_PATH = $HOME/myCircleNode/build/Debug
MAYA_SCRIPT_PATH = $HOME/myCircleNode
XBMLANGPATH = $HOME/myCircleNode/%B

これらの環境変数および Maya.env ファイルについての詳細は、上の Makefiles を使用するセクションを参照してください。

Maya API アプリケーション

API アプリケーションのビルド用には、Makefile ソリューションのみ提供しています。提供されているスタンドアローン型アプリケーション サンプルをビルドするには、以下を実行する必要があります。

setenv MAYA_LOCATION /Applications/Autodesk/maya2013/Maya.app/Contents
mkdir $HOME/devkit/applications
cd $HOME/devkit/applications
cp MAYA_LOCATION/Applications/Autodesk/maya2013/devkit/applications/* .
make Clean
make

シェル スクリプト mayald は Maya API アプリケーションをリンクするために使用されます。 コマンドを実行する前に MAYA_LOCATION を正しいバージョンの Maya に設定しておかないと、アプリケーションが正常に実行されない場合があります。

自分で用意したプラグインをリンクする場合、mayald コマンドに対して、使用した API クラスを含む OpenMaya ライブラリのリストを提供します。 それぞれのクラスの参照ページは、クラスを含む特定 OpenMaya ライブラリを指定します。

Mac OS X では、DYLD_LIBRARY_PATH 環境変数を設定してから、これらのアプリケーションを実行してください。ランタイム リンカーが Maya の共有ライブラリを検索することができるようになります。

スタンドアローン型アプリケーションのビルドと実行を準備する手順として、以下の環境変数の設定をお勧めします。

setenv MAYA_LOCATION /Applications/Autodesk/maya2013/Maya.app/Contents
setenv DYLD_LIBRARY_PATH $MAYA_LOCATION/MacOS
setenv DYLD_FRAMEWORK_PATH $MAYA_LOCATION/Frameworks