使用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...