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

2021-05-24 14:33:22 字數 1212 閱讀 8518

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

1. 新建立乙個manualobject物件

mmanualobj = new ogre::manualobject("******stuff2");

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("******stuff2");

3. 呼叫繪製函式

mmanualobj->clear();

mmanualobj->begin("", renderoperation::ot_line_strip);

for (int i = 0; i < 5; i++)

mmanualobj->end();

4. 建立場景節點掛接該物件

全部**;

******stuff.h

view sourceprint?

01 #ifndef __******_stuff_h__ 

02 #define __******_stuff_h__ 

05  

14     } 

15 protected: 

16     void createscene(); 

17     ogre::manualobject* mmanualobj; 

18 }; 

19 #endif

******stuff.cpp

Ogre的渲染優化心得

做商業網路遊戲的話,效率是乙個不可避免的話題,為了留更多的空間給客戶端的邏輯,那麼渲染模組就應該盡量高效.小弟只 一下ogre的渲染優化,以大家熟悉的天龍八部為例.以網上流傳版本的天龍 來看,ogre和cegui部分的渲染都有嚴重的效能問題,ogre 地形的實現,乙個tile,只按材質做了批次優化,...

Ogre中的批次渲染技術 Batching

不管在什麼引擎中渲染操作都是乙個非常耗費系統資源的過程,乙個物體要渲染到螢幕上就必須要經過一次渲染操作,假如場景中有幾萬棵相同的樹,那麼系統也會執行幾萬次的渲染操作,這樣程式效率會非常慢,如果能將這些具有相同渲染狀態的樹,用一次渲染操作都畫出來,那麼效率就會提公升好幾倍。ogre引擎所提供的ogre...

Ogre中的批次渲染技術 Batching

不管在什麼引擎中 渲染操作都是乙個非常耗費系統資源的過程,乙個物體要渲染到螢幕上就必須要經過一次渲染操作,假如場景中有幾萬棵相同的樹,那麼系統也會執行幾萬次的渲染操作,這樣程式效率會非常慢,如果能將這些具有相同渲染狀態的樹,用一次渲染操作都畫出來,那麼效率就會提公升好幾倍。ogre 引擎所提供的 o...