四月 2008 Archives

2008-04-13 11:23:04

使用Eclipse開發Maya plugin時關於除錯的一些設定

在試著找過文件並且請教朋友之後,終於找到應該設定Degugger的參數的種類。首先,由於我們要進行除錯的Maya plugin是個shared library,這其實表示我們要除錯的應用程式是Maya本身。在使用Eclipse的CDT時,新增一個給Maya的Debug設定,並且是使用C/C++ Local Application的預設設定來修改。以下條列應該修改的設定和環境參數,其餘設定可用預設值。

  • Main的部份,將C/C++ Application的部份由預設的.so(就是你的plugin)
    Debug/yourplugin.so
    
    改為maya.bin的位置。例如:
    /usr/autodesk/maya8.5-x64/bin/maya.bin
    
  • 在Environment的部份,加入以下Environment variables及其對應的值:
    LD_LIBRARY_PATH                 /usr/autodesk/maya8.5-x64/lib
    MAYA_DEBUG_NO_SIGNAL_HANDLERS   1
    MAYA_LOCATION                   /usr/autodesk/maya8.5-x64
    
  • 以上是必要的基本設定,其他部份的設定可參考自己需求修改。
    參考資料 Using a debugger to debug your plug-ins


    Posted by Wesly Chu | Permanent Link | Categories: 3D CG

    2008-04-09 01:14:21

    使用Eclipse開發Maya plugin的一些設定

    在Linux的環境下,藉由Eclipe也可以直接設定程式專案來開發Maya plug-in。對程式專案所需要的修改的設定和進行OpenGL專案的部份也很類似,但是稍微複雜些。這是因為在Compiler和Linker的部份參數較多。以下條列我目前發現需要修改的部份。需要注意的是,這只是針對單一plugin的撰寫,並不是建立一個build system。

    首先當然要新增一個C++程式專案,並選擇專案型態為Shared Library。在這個新專案中,修改其Project Properties中關於C/C++ Build的Settings部份。主要要增加的有:
    C/C++ Build -> Settings -> GCC C++ Compiler -> Preprocessor: 在Defined symbols(-D)內加入_BOOL,LINUX, REQUIRE_IOSTREAM
    C/C++ Build -> Settings -> GCC C++ Compiler -> Directories: 在Include paths (-I) 內加入Maya include path(如:/usr/autodesk/maya8.5-x64/include)
    C/C++ Build -> Settings -> GCC C++ Compiler -> Optimization: 在Other optimization flags欄位可加入"-pthread"或其他旗標
    C/C++ Build -> Settings -> GCC C++ Compiler -> Miscellaneous: 在Other flags欄位,要加入"-fPIC"及"-fno-gnu-keywords"
    以上這些是針對Compiler部份。以下則是針對Linker的部份

    C/C++ Build -> Settings -> GCC C++ Linker -> Libraries: 在Libraries(-l)這裡需要增加的項目其實是可多可少。全部都寫上也無不可。目前發現需要加入的有

    OpenMaya
    OpenMayaRender
    OpenMayaAnim
    OpenMayaUI
    OpenMayaFX
    GL
    GLU
    glut
    
    在Library serach path(-L)的部份一樣需要加入Maya library path(如:/usr/autodesk/maya8.5-x64/lib)
    C/C++ Build -> Settings -> GCC C++ Linker -> Miscellaneous: 加入"-D_BOOL -DLINUX -DREQUIRE_IOSTREAM"

    值得注意的是Debug的部份目前還沒找到好的作法。在Maya官方文件當中所提及的只有利用

    maya -d ddd
    
    的方式來使用ddd作為除錯的工具。

    參考資料Writing a Plugin


    Posted by Wesly Chu | Permanent Link | Categories: 3D CG

    2008-04-07 15:22:19

    使用Eclipse進行OpenGL程式開發的基本設定

    以下內容參考自Article:OpenGL programming in Eclipse

    要在Linux下利用Eclipse寫OpenGL相關的程式,可安裝GLUT或是SDL相關的開發套件。如果選用GLUT,需要安裝freeglut3-devel的函式庫。依據參考的那個網頁,在Eclipse新增一個C++的程式專案後,必須在GCC C++ Linker裡面增加一個glut的值。所以最方便的方法就是利用預設的C++專案後,再修改必要的地方。


    Posted by Wesly Chu | Permanent Link | Categories: 3D CG