Ogre 如何渲染簡單的幾何物體

使用ManualObject或者其派生類渲染簡單的幾何物體, 步驟如下:

1. 新創建一個ManualObject對象
    mManualObj = new Ogre::ManualObject("SimpleStuff2");
2. 設置該ManualObject的參數
    1) 設置其渲染序列組
         mManualObj->setRenderQueueGroup(RENDER_QUEUE_OVERLAY);
    2) 使用單元投影矩陣和單元視圖矩陣, 這兩個默認爲false, 即使用相機的視圖矩陣和投影矩陣
         mManualObj->setUseIdentityProjection(true);
         mManualObj->setUseIdentityView(true);
         使用這兩個函數之後, 所繪製的物體座標範圍位於(-1, -1, -1)至(1, 1, 1)之間
    3) 設置查詢參數
         mManualObj = new Ogre::ManualObject("SimpleStuff2");
3. 調用繪製函數
    mManualObj->clear();
     mManualObj->begin("", RenderOperation::OT_LINE_STRIP);
     for (int i = 0; i < 5; i++)
     {
         mManualObj->position(pos[i]);
     }
     mManualObj->end();
4. 創建場景節點掛接該對象
    mSceneMgr->getRootSceneNode()->createChildSceneNode()->attachObject(mManualObj);   

全部代碼;

SimpleStuff.h

view sourceprint?
01 #ifndef __SIMPLE_STUFF_H__ 

02 #define __SIMPLE_STUFF_H__ 

03 #include "ExampleApplication.h" 

04 class SimpleStuffApp : public ExampleApplication 

05 { 

06 public: 

07     SimpleStuffApp() {} 

08     ~SimpleStuffApp() 

09     { 

10         if(mManualObj) 

11         { 

12             delete mManualObj; 

13         } 

14     } 

15 protected: 

16     void createScene(); 

17     Ogre::ManualObject* mManualObj; 

18 }; 

19 #endif

 
SimpleStuff.cpp

 

本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/pizi0475/archive/2011/03/16/6254708.aspx

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章