自分はEclipseでMayaのスクリプトを書いてますが、
デフォルトだとPython API 2.0 のOpenMayaを書いてもオートコンプリートが効いてくれません。
オートコンプリート自体は使えなくてもまだいいんですが、
Eclipse上でimportが有効にならないので×ついてしまうのが気になってしまい
どうにかならないかなぁと無理矢理やってみました。
自分はEclipseでやっていますが、おそらくVisualStudioなどでも有効??(Mayaは2016という環境)
※お試しになる場合は自己責任でお願いします。
まずその前にMayaでスクリプト書くのにEclipseを使いたい方はこちらの記事を参考にして頂くと良いと思います。
統合プログラミング環境、Pleiades (プレアデス) Eclipseを使ってMayaPython開発をする
http://www.comtec.daikin.co.jp/DC/UsersNotes/Ritaro/tutorial/python_IDE/
API2.0のことを調べていて下記の記事をみつけました。
Maya 2016 + Visual Studio 2013 のPython開発環境の構築 – Mukai Laboratory
http://mukai-lab.org/library/mayapythonvs.html
こちらの記事ではVisualStudioを使われていますが、
にするとIntellisense(オートコンプリート)が機能すると書いてあり、
Eclipseでも_OpenMaya_py2にすると効くようになりました!
そこでEclipseで設定している事前定義ファイルの場所を見てみました。
C:\Program Files\Autodesk\Mayaのバージョン\devkit\other\pymel\extras\completion\pypredef
こちらにこの↓4つのファイルがあります。
maya.api._OpenMaya_py2.pypredef
maya.api._OpenMayaAnim_py2.pypredef
maya.api._OpenMayaRender_py2.pypredef
maya.api._OpenMayaUI_py2.pypredef
ん?まてよ、このファイル名に見覚えあるぅぅぅぅぅぅ!!
おそらくこれらのファイルからインポートされているものだと推測しました。
そして、それらのファイルとは別にこの↓4つのファイルもあります。
maya.api.OpenMaya.pypredef
maya.api.OpenMayaAnim.pypredef
maya.api.OpenMayaRender.pypredef
maya.api.OpenMayaUI.pypredef
これを開いてみると空っぽでした。
今までやっていたインポートしていたのたのはこれらのファイル・・・?!
なので、試しに maya.api._OpenMaya_py2.pypredef の中身をコピーして maya.api.OpenMaya.pypredef にペーストして上書きしてみます。
すると、どうでしょう!
コメントをお書きください