MAYA C++ API 編譯環境設置 – with Visual Studio

要把編譯環境設置好真不容易! Visual Studio 本身的環境就搞死你了。請參考我的文章 C++ 研究小劄之始

然後MAYA 這邊的專案設定也不怎麼簡單。我到現在都還是深深感嘆,我根本就是碰運氣矇好的,老實說這並不是好現象,我希望幾年後,有能力並能夠直指我這幾天遇到問題的背後成因。

以下這篇文章將簡介經驗與過程,提供各位減少設定過程中的彎路,加入 MAYA 程式設計的天地。

系列目錄


一、MAYA C++ API 編譯環境設置 – with Visual Studio

二、我的安裝經驗,從C++到精靈安裝 – 步驟篇 (不提及各種錯誤訊息)

三、我的安裝經驗,從C++到精靈安裝 – 可能錯誤篇

四、MAYA C++ API Hello World !


MAYA C++ API 編譯環境設置 – with  Visual Studio

概念

先不急著進入實作細節,先來多聊一點概念。首先,你得知道Autodesk 已經幫你設計好的,可用於搭配的 C++ 作業環境只有兩種, Visual Studio 跟 g++ ,請參考官方網頁:

 Compiler Requirements

哦…是的官方網頁就是這麼輕飄飄的一小頁,讓你以為這是一件很簡單的事情。 別傻了… Autodesk 哪能讓你這麼輕鬆就過關?

總之,如果你想以 C++ 開發 MAYA 的程式,你必須在 Visual Studio 跟 g++ 之間選一個環境,然後把需要的編譯環境設定好,你才能開始寫程式。

寫好程式,並且編譯成為動態連結的函式庫 .mll ,就可以夠過 MAYA 的 plug-in 管理介面,把 .mll 載入,之後你就可以在 MAYA 內使用你的程式了。

那其他的編譯器,諸如 Dev C++ 之類的呢?我想恐怕是 … 不行,大致搜索過整個網路,假如這件事情可行的話,或多或少應該要有人貼出他的改造心得才是,但是顯然沒有。所以,先暫時認命吧!

接著我們再來搞懂一些前提知識,然後我們就可以準備開始建置環境。

MAYA 外掛精靈 ( MayaPlugInWizard )

先看官方網頁,關於 Windows 下的編譯環境設置,有一個精靈可以幫助你: Maya Plug-in Wizard For Visual Studio

嗯 這個網頁看起來很短,步驟很少,看起來好簡單對不對?  …  (你曉得我想表達的…) … (算了,我也懶得吐槽了 …)   ….  總之,雖然這裡的步驟很簡單,但是因為兩者的結合存在很多細節,而如果你不是很熟悉 Visual Studio,那這些細節會讓你發瘋。

回到正題,這精靈是幹什麼的?精靈最大的目的就是讓你不必進行複雜的手動設定,安裝成功的話,將會以 Visual Studio 的專案範本呈現。你到新增專案內就可以看到了

pic01

圖一、新增專案內的 MAYA專案精靈圖示

如果你不喜歡精靈也沒有關係,你可以從空白的專案,一步步手動設定所有需要的環境,簡單的說就是親自設定 Include 、 lib 的路徑、輸出檔名以及其他變數等等,大概17個步驟,請參考網頁:

上述網頁說的是如何憑空建構 MAYA 專案環境。我建議是各位仍應保存這些文章,畢竟這是基本知識,也許你安裝精靈或之後編譯時遇到問題,可能可以從這裡找靈感。

好了,以上的手動設定方法我們奉為經典即可,但咱們還是投靠精靈吧!

精靈大概怎麼裝? 裝完怎麼用?

  1. 精靈的檔案已經附在 MAYA 安裝資料夾內,路徑大致是 C:\Program Files\Autodesk\Maya2013\devkit\plug-ins,是個 zip 壓縮檔。
  2. 把該檔案解壓縮後,分別把對應的檔案複製到對應的 Visual Studio 的資料夾就完成,之後你就可以在新增專案內找到 MAYA 精靈。(視情況可能需要執行Visual Studio的環境變數設定指令 vcvarsall.bat)
  3. 執行精靈後,設定你打算開發的目標以及MAYA的版本,完畢後就可以開始你的新 MAYA 程式開發,詳細圖文說明則請參考後續文章。

pic02

圖二、設定開發的資料、環境條件

pic03

圖三、成功開始一個專案

精靈安裝與使用的參考網頁

這是我在摸索過程中參考的幾篇文章,其中第一篇最貼近我的使用狀況。

  1. Road to Maya API C++ by DAISUKE MAKI

  2. MAYA API插件編程–入門篇 by huawenguang的專欄
  3. MayaC++API
  4. Writing a simple plug-in  (官網的Hello World 範例)

懂了大概後,你就可以進入實作篇:

我的安裝經驗,從C++到精靈安裝 – 步驟篇 (不提及各種錯誤訊息)

祝你好運! XDDDD

You Might Also Like

Leave a Reply

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料