Maya Python プラグインの Learning Path

ようこそ

この Learning Path では、Python を使用して Maya プラグインを開発する上で重要なコンセプト、クラス、および関数の概要を説明します。この Learning Path のトピックを順番に読むことをお勧めしますが、注釈付きのサンプル コードはリファレンス マテリアルとして独立して参照できます。

注:このラーニング パスは、Maya Python API 1.0 と 2.0 API の両方で使用します。2.0 API は高速化され、より「Python に近い」ものになりましたが、まだ 1.0 のすべてのフィーチャは 2.0 で使用できません。この API と旧式の 1.0 API の違いについては、「Maya Python API 2.0」を参照してください。

100% 以上のボクセル

Python スクリプトと Python プラグインの違いは?

始めるにあたって、Maya の Python スクリプトプラグインの違いを理解することが重要です。

  • Python スクリプト: これらのプログラムは、Maya のインタラクティブなスクリプト エディタ(Script Editor)ウィンドウで実行できます。Python スクリプトは、通常、maya.cmds モジュールを使用します。このモジュールの機能は、Maya のほとんどの MEL コマンドをエミュレートします。次のインポート ステートメントは、通常、Maya Python スクリプトの先頭にあります。
    import maya.cmds as cmds
    この Learning Path では、maya.cmds モジュールを使用して Python プラグインを実行します。
    注:maya.cmds Python モジュールの詳細については、『Maya ユーザ ガイド』 > 「Technical Documentation」 > 「CommandsPython」を参照してください。
  • Python プラグイン: これらのプログラムは、Maya のプラグイン マネージャによって、C:¥Users¥<username>¥Documents¥maya¥<version>¥plug-ins および MAYA_PLUG_IN_PATH 環境変数で定義されているディレクトリからロードされます。Maya Python プラグインを使用すると、コマンド、ノード、シェーダ、コンストレイント、ファイル トランスレータ、デフォーマなどのカスタマイズ可能な要素を定義できます。Maya の Python プラグインは、Maya の C++ API に基づく、複数の OpenMaya モジュールを使用します。

    2.0:

    import maya.api.OpenMaya       as OpenMaya        # Common classes
    import maya.api.OpenMayaAnim   as OpenMayaAnim    # Animation classes
    import maya.api.OpenMayaRender as OpenMayaRender  # Rendering classes
    import maya.api.OpenMayaUI     as OpenMayaUI      # User interface classes
    

    1.0:

    import maya.OpenMaya       as OpenMaya        # Common classes
    import maya.OpenMayaMPx    as OpenMayaMPx     # Classes from which to inherit
    import maya.OpenMayaAnim   as OpenMayaAnim    # Animation classes
    import maya.OpenMayaFX     as OpenMayaFX      # Effect classes (hair, particles, fluids)
    import maya.OpenMayaRender as OpenMayaRender  # Rendering classes
    import maya.OpenMayaUI     as OpenMayaUI      # User interface classes
    import maya.OpenMayaCloth  as OpenMayaCloth   # Cloth classes