太極影音的 3D 動畫長片部門(Feature Animation Department,名片上好像是這麼寫的),九成的機器是執行 Linux,週間的工作除了逛網頁、聽音樂、開 gtalk 打屁聊天以外,就是開著 Maya 幹正事了。我在猜,公司裏大部分的人,接觸 Maya 時,都是在 Windows 平台上的,於是乎,我們自然遇到了很多Linux 版 Maya 不適應症的案例。有些還有得救,有些就無藥可醫了。這一篇就是要指出那些我們覺得沒救了(或只是找不到解藥)的…一篇隨意聊聊的文章。
Maya 是跨平台的軟體,以前可以在 IRIX, Windows, Linux 和 Mac OS 上執行,而最早的版本,則是出生在 IRIX(SGI 上的一種作業系統)這個平台上的,後來才 port 到其它平台。那時 Maya 的圖形界面部分(GUI),是使用一套叫 Open Motif 的來處理。後來 IRIX 平台的 Maya 不出了,於是只剩下三個平台,其中 Mac 版的,常常是三個版本裏頭比較遜的,或是功能比較晚補齊的。這也許是因為玩 Mac 的人,只愛搞平面,不愛搞 3D 的? Windows 的話,因為全世界的軟體業,幾乎被 Microsoft 給侵略了,Windows 自然是大宗。但動畫公司因為各種原因(原因也可能是不詳),所以都是以 Linux 為工作平台。所以 Linux 版的 Maya 使用者,不見得比 Windows 版的來得少。
取自 Maya 8.5sp1(Linux 版的)的一張 screenshot,看起來挺正常的,似乎沒什麼問題。
第一個缺點是,Maya 的 GUI 和其它 X Window 的程式,長相上不和諧(Inharmonic)。
拿這張圖來說,左上角是郵件軟體 Evolution,它的界面就明顯地和 Maya 不大一樣。這雖然不是什麼大問題,而且說不定有人很喜歡 Maya 的簡易風格,但如果你的 Maya 會依你自己設定的佈景主題(theme)的不同,而有不同樣式的按鈕(button)、列表(list)、字型(font)、選單(menu)…等,那是不是在工作時,心情上會開心一點? 會覺得更有個人特色一點? 是的,Maya 也是有提供一些顏色屬性讓你調整,但能調整的有限,而這就是我把它提出來當作第一點,可有可無的缺點(不過對於我們這群在 Linux 下用了三年的人來說,它真的很醜 = =,真得看得很膩!!!)。
拿下頭這一張,取自 Mac OS X Maya 8.5 的 screenshot 來說,就是明顯地好看多了!
會有 GUI 不和諧這個問題,主要是因為 Linux 下的 Maya,在 GUI 上是用 Motif(正確來說,是 Open Motif,因為 Motif 算是已經死掉了的東西…),除非你用的 Window Manager 底層也是用 Open Motif,然後所有程式也是用 Open Motif 開發的,不然要長得一樣實在有點困難。拿現在最流行的 GNOME/Gtk 或是 KDE/Qt 來說,都會有這個「長不一樣」的問題。
第二個缺點是,Linux 下的 Maya,它的 file dialog(就是開檔或存檔時出現的視窗)非常的難用 = =
拿上圖來說,左邊是稍為比較現代一點的 Nautilus (@wikipedia) 檔案總管,它可以有 icon view 或是 list view,而且可以依檔名、日期或是檔案大小做排序,同時有很方便使用的 tree view,也可以把一些常常會去的目錄給 bookmark起來…這些都算是很基本但很好用的功能了。但 Maya 的 file dialog 一個特色都沒有(這樣說可能有點過頭了,其實它也是有的…不過大抵上就是說,它很遜)。
另一點影響很大的是,使用 Linux 版 Maya 的 file dialog 時,在點選目錄,需要一些練習 = =…
第三個缺點是,Gnome/Gtk 或是 KDE/Qt 都無法有效地處理好 Open Motif 的視窗(這說不定是 Gtk 或 Qt 的錯),導致視窗滿天飛。
使用 Maya 的人,常常會開一堆視窗(可能是 Outliner、Scrip Editor 或是 HyperGraph…),當視窗一多,你總是會希望有個非常快速的方法可以找到你要的視窗。很遺憾地,在 Linux 下的 Maya 在這一點上,一點忙都沒有幫上,反而還幫了倒忙!!
1. window 會跑到下頭
2. window 點選了後,不會跑到最前頭
第四個缺點是,它的 copy & paste 行為很怪。
會被影響到的,是那些會使用一些 script 來幫助工作的人。Maya 的 script editor 無法做 ctrl-c 與 ctrl-v 的 copy & paste,雖然有 mouse copying (middle key) 的支援,但因為 cursor 不明顯,也不大好用。每次要在 script editor 寫點小程式測試什麼的,都會寫得想打人。