MayaのスクリプトをPyCharmで楽にコーディングする


MayaのスクリプトをPyCharmで楽にコーディングする

先日開催された ゲーム開発者向けPythonセミナー にてPycharmを使ったデバッグ方法が紹介されていたので実際の導入方法を紹介します。

PyCharmを初めて起動する方はカスタマイズ設定終了後、このような画面から始まると思います。
右下のConfigureからSettingsに飛べますのでご参考までに

目的

  • 自動補完機能を使ったスムーズなコーディング
  • 強力なリファクタリング
  • デバッグ機能の活用

環境

  • Windows10 Home
  • Maya2017 Update5
  • PyCharm 2018.1.4 Professional

自動補完の導入手順

Maya devkitの導入

Maya devkidとはざっくり言ってしまうとMayaのプラグイン開発やコーディングに必要な機能を盛り込んだものです。
こちらから自分の環境に合わせたdevkitをダウンロードしましょう。
Maya2017 Update5のdevkitが見当たらないのですがUpdate4で今のところ問題なく動いています。(不具合があるかもしれませんのでご注意を)

解凍したフォルダ内の Maya2017u4_DEVKIT_Windows\devkitBase\devkit をMayaのインストールディレクトリにコピーします。
デフォルトであれば C:\Program Files\Autodesk\Maya2017 です。

MayaCharmのインストール

MayaCharmとはPyCharmのプラグインです。
PyCharm ProfessionalであればMayaに接続してデバッグ機能を利用することが可能です。
Settings --> Plugins --> Browse RepositoriesからMayaCharmを検索し、インストールします。

PyCharmのProject Interpreter Paths追加

Settiings --> Project Interpreter

Project Interpreterの右側の歯車マークからAddでAdd Python Interpreterのウィンドウを開き、Project Interpreterを C:\Program Files\Autodesk\Maya2017\bin\mayapy.exe に設定


Python packaging toolsがないと怒られたらそのすぐ右のInstall packaging toolsからインストールしてください。

先ほどの歯車マークからShow All --> 右側アイコン群の上から五番目のアイコンでInterpreter Pathウィンドウを開きます。

C:\Program Files\Autodesk\Maya2017\Python\Lib\site-packages をリムーブし、
C:\Program Files\Autodesk\Maya2017\devkit\other\pymel\extras\completion\py を追加します。

新規プロジェクトを作成し、適当な.pyファイルを追加します。

これで補完が効くようになっているはずです。

リファクタリング

Typoであったり何かしらの問題点を波線で示してくれます。
波線にマウスポインタをかざして Alt + Enter で問題の解決策が提示されるので積極的に活用しましょう。

リファクタリングに関してはmayaに限らずpython全般に言えることなので省略。
ページ最下部に参考にさせて頂いているリンクを貼ります。

デバッグ機能

MayaとPyCharmを接続する設定を行います。

PyCharm側

デバッグするファイルの設定

Run --> Edit Configuration
右上の + からMayaCharm Debugger

Fileをデバッグするスクリプトファイルに合わせます。

Maya側

コネクションするポート設定

デフォルトの設定であれば C:\Users\ユーザ名\Documents\maya\2017\scripts\userSetup.py に下記コマンドを追加します。

userSetup.py
import maya.cmds as cmds
if not cmds.commandPort(':4434', q=True):
    cmds.commandPort(n=':4434') 

このコマンドはPyCharmの Settings -->MayaCharm で確認できます。
ホスト名やポート番号を変更した場合はこちらからコピペで

デバッグ

左上のプルダウンメニューから先ほど作成したConfigurationを選択します。

RunでMayaへコマンドが送信されます。

Debugを実行した場合このようにブレイクポイントを貼ることもできるのでprintfデバッグやコメントアウトデバッグが格段に減り、作業を効率化することができます。

Gitを使ったバージョン管理

おまけ
VCS --> Enable Version Control Integration

Gitがない人は右下で怒られるのでそこからインストールします。

インストールが完了したらConfigure
Path to Git executableを先ほどインストールしたgit.exeに
デフォルトは C:\Program Files\Git\bin\git.exe

VCS からCloneやCommitなどのGit操作ができます。

参考リンク

最強のPython開発環境 PyCharmのすゝめ
最強のPython統合開発環境PyCharm
MayaとPyCharmと、時々、VIM(前編)
MayaとPyCharmと、時々、VIM(後編)
print デバッグから卒業したい人のための Maya+PyCharm