2009年4月10日 星期五

如何安裝maya 外掛(plugin), python & MEL 程式

Maya 算是擴展性很高的一套軟體, 所以你在網路上可以找得到許多很實用或純粹有趣的外部程式.

Maya 外部程式基本上可以分成兩大類:

1. mel/python 程式.
這一類的程式大多數用在作業自動化或簡單化.Maya的使用介面(UI) 也都是用Mel 程式建構出來的.易懂好操作,但不適合做複雜運算或特殊作業.

2. 外掛(plug-in)
這一類的程式適合用來增加maya本身缺法的功能..例如 renderman 算圖, 特別格式的export import等等. Maya 8.5以上的外掛又可以分成兩種:
(a). C++ 外掛 : .mll 或 .so 或 .bundle
這一種外掛是需要針對不同maya版本各別編譯的,所以你必須現確認你拿到的外掛版本是否跟你的Maya版本一樣.例如 maya 2008 不能用 8.5或2009版本的外掛

(b) python 外掛 : .py或 .pyc
這一種外掛是maya 8.5以上的版本都可以通用的,不需要為maya某個版本重新編譯(compile).
當你拿到一個外部程式時,又要如何處理才可以讓Maya"找得到"它呢?有些開發者會提共安裝檔來簡化安裝過程,但若沒有的話,你可以執行以下三種方法之一 :


方法一:

把外掛檔 (.mll 或 .so 或 .bundle或 .py 外掛) 放到 [maya安裝路徑]/bin/plug-ins/ 裡.
例如 : "C:/Program Files/Autodesk/Maya8.5/bin/plug-ins"

把scipt檔 (.mel 或 .py)放到 預設 script 路徑裡.
例如 :"C:/Documents and Settings/rainmaker/maya/scripts".
或 "/home/rainmaker/maya/scripts".

方法二:
在系統環境變數裡加上這些變數:

MAYA_SCRIPT_PATH = [mel檔的之料夾]
MAYA_PLUG_IN_PATH = [外掛檔的之料夾]
PYTHONPATH = [python檔的之料夾]
例如:
MAYA_SCRIPT_PATH = C:\zebruv\scripts;E:\test_scripts;
MAYA_PLUG_IN_PATH = C:\zebruv\plugins;
PYTHONPATH = C:\zebruv\scripts;


方法三:

用文字編輯器打開 maya.env 檔.
maya.env 這個檔案的路徑:
windows -> drive:\Documents and Settings\username\My Documents\maya\[版本]
linux -> ~/maya/[版本]
Mac OS X-> /Users/username/Library/Preferences/Autodesk/maya/[版本]
在maya.env 裡加上這幾行:

MAYA_SCRIPT_PATH = [mel檔的之料夾]
MAYA_PLUG_IN_PATH = [外掛檔的之料夾]
PYTHONPATH = [python檔的之料夾]
例如:

MAYA_SCRIPT_PATH = C:\zebruv\scripts;E:\test_scripts;
MAYA_PLUG_IN_PATH = C:\zebruv\plugins;
PYTHONPATH = C:\zebruv\scripts;


如何在maya裡檢查目前存在的 maya plugin 目錄?
-> 在maya裡打 getenv "MAYA_PLUG_IN_PATH";

如何在maya裡檢查目前存在的 maya script 目錄?
-> 在maya裡打 getenv "MAYA_SCRIPT_PATH";

如何在maya裡檢查目前存在的 maya icon 目錄?
-> 在maya裡打 getenv "XBMLANGPATH";

9 則留言:

  1. 方法(四):
    1.可以在以下地方新增modules資料夾:
    (a)我的文件夾>MAYA
    or
    (b)我的文件夾>MAYA>2XXX(版本資料夾)
    or
    (or)MAYA主程式資料夾下
    可以同時存在多個(a)的話可以讓多版本讀取使用

    2.製作modules資料夾指定文件
    (a)新增文字檔一個
    (b)寫入: ( + 名稱 版本 資料夾路徑 )
    (c)範例: ( + abc 1.0 C:\pzmanMaya\Mel\FX\abc)

    這個路徑下面可以同時支援,plug-in,scripts,icon三個資料夾~用這方式分類和外連非常方便而且可以抽取外掛整理以後只需要丟modules文件夾即可外聯

    回覆刪除
  2. 感謝PZMAN大哥分享!
    的確還有MAYA_MODULE_PATH這種方法,只是我本身沒識過,所以沒寫在此文章.

    回覆刪除
  3. 寫得很簡單很清楚!
    感謝呢!

    回覆刪除
  4. 葉教授,我卡住了,第五項怎麼執行@@??


    Zebruv 1.2.4 installation (Windows):


    1. Copy files in script folder (zebruvSetup.mel and zebruvUI.mel)
    in your maya script folder, i.e.
    : C:\Documents and Settings\me\My Documents\maya\scripts

    2. Copy mll in plugin folder according to your maya version i.e. maya2010-32bit/zebruv32.mll to maya plugin folder, i.e. C:\Program Files (x86)\Autodesk\Maya2010\bin\plug-ins

    3. Copy rainUVPrescale.py in plugin folder to maya plugin folder, i.e. C:\Program Files (x86)\Autodesk\Maya2010\bin\plug-ins

    4. Copy icon "zebruv_icon.xpm" to icon folder, i.e. C:\Documents and Settings\me\My Documents\maya\2010\prefs\icons

    5. start maya, and execute zebruvSetup to create a button in your current shelf. Zebruv UV Tool should be ready to use now.
    Just click the icon to activate the UI.

    回覆刪除
  5. 葉教授,我安裝成功了,但有一個問題,因為之前我model已經先bind上去了..而且也都paint完了,但執行這個拆uv,會把他的rig.history刪除= =..這樣不會又要重paint一次,有辦法可以解決嗎????

    回覆刪除
  6. 請參考這文章 : http://maya-tricks.blogspot.com/2010/11/uv.html

    回覆刪除
  7. 葉教授這個要怎麼裝


    Installation

    Graph Editor Redux is a Python scripted plugin that replaces the default Maya Graph Editor. To install, place the entire GER/ directory contents in your Maya plugin path or anywhere else you desire.

    Use Maya Plug-in Manager to navigate and load b_GraphEditorReduxPlugin.py?

    This will add a new command called ER? It has 2 flags: oad?and nload? Using these you can switch between Graph Editor Classic and Graph Editor Redux at any time (closing any existing Graph Editor window first, of course).

    To enable Graph Editor Redux:
    a) From mel
    GER oad;

    b) From python
    import maya.cmds as cmds
    cmds.GER(l=True)

    To disable Graph Editor Redux:
    a) From mel
    GER nload;


    b) From python
    cmds.GER(u=True)


    Support and Future Versions

    I'd really like to know where this tool ends up being used and for what projects. Also if you have ideas for improvements and for further features you'd like to see, let me know.

    Hope it makes your animation tasks a bit more manageable and fun.

    Ron
    rbublitz [at] yahoo.com


    謝啦

    回覆刪除
  8. 我安裝完了,
    但是會出現# Error: ImportError: No module named PyQt4 #
    這個錯誤訊息,要怎麼解決勒?

    回覆刪除
  9. 這邊有個比較不常見的問題

    就是我灌了facemachine的外掛

    但使用之覺得 還好 就不想用了 想把它刪掉

    我就把外掛製作出來的東西刪掉 然後再把plug-in的東西刪掉

    但之後要開檔案就開不起來了 除非我再把外掛灌回去

    我想問的是該怎麼把外掛完全移除 檔案裡也不要存留那些東西

    不然就無法開不起來

    回覆刪除