ogre小知識點

2021-07-03 16:12:45 字數 1723 閱讀 3949

最近學習下ogre,使用感覺還算不錯。本文記錄下我學到的ogre小知識點。

1. ogre場景組織。ogre的各類資源都有其管理類,如scene/mesh/material等。

2. ogre場景組織。ogre使用node的子類scenenode做為場景結點,來構建常用的場景樹。scenenode下可新增(attach) movableobject物件,movableobject有兩個子類manualobject和entity。manualobject由使用者自己輸入要顯示內容的點/面/顏色等;entity下的顯示內容由mesh物件(唯一對應)提供,mesh可由**生成,也可用**生成。

3. camera顯示功能。目前ogre為camera提供了3種顯示功能:點/線/實體,操作**如下:

case

0: mmain->getcamera()->setpolygonmode(ogre::pm_points); break;

case

1: mmain->getcamera()->setpolygonmode(ogre::pm_wireframe); break;

case

2: mmain->getcamera()->setpolygonmode(ogre::pm_solid); break;`

4.環境光設定

mscenemgr->setambientlight( colourvalue( 1, 1, 1 ) )
5.設定背景色

ogre::renderwindow::getviewport(int index)::setbackgroundcolour (const colourvalue &colour)

6.qt與ogre結合

官網給出了ogre和qt5結合的例子,

例子中使用qwindow而不是qwidget,因為(1)qwindow是qt5中新加的,它比qwidget抽象層級更高(3)在qtgui模組中,這有利於減少檔案體積,尤其對於qt quick開發的,qt quick依賴於qml模組,不依賴qwidgets模組。

在我們使用的時候要用將這個qwindow的視窗載入到qwidget中使用,但問題出現了。一定要

qwindow* w =

new qtogrewindow;

w->resize(400, 300) // 順序一定不能變,否則ogre視窗啟動時會出現視窗大小178x0或0x0的錯誤

qwidget* w2 = qwidget::createwindowcontainer(ogrewindow);///這個w2沒有任何作用,它本身不做任何操作,甚至不檢查引數,全部直接傳給w

7.啟動ogre抗鋸齒

ogre的抗鋸齒在ogre.cfg中設定後無效需要在建立視窗的時候設定才有效。**如下:

root.initialise(false);

namevaluepairlist misc = new namevaluepairlist();

misc["externalwindowhandle"] = hwnd.tostring();

misc["fsaa"] = "4"; // 可選值0,2,4,8,切記是字串

window = root.createrenderwindow("****** mogre form window", 0, 0, false, misc);

Hibernate 小知識點

今天比較忙沒怎麼寫 知識一些曉得知識或是經驗吧!1.lazy延遲載入 也可以說是需要的時候再區載入 場景 乙個類如person和address,person可以通過getaddress 來得到address的set集合.有乙個dao控制類operation.方法public person query...

dom 小知識點

1 classname屬性可設定或返回元素的 class 屬性。function getclass document.getelementbyid d1 classname bbb alert document.getelementbyid d1 classname 2 removechild 刪除...

小知識點 備查

1,kermit c 安裝 sudo apt get install ckermit 開啟串列埠 在終端裡執行 sudo kermit c 命令 關閉串列埠 先同時按住 ctrl 和 鍵,然後鬆開再按 c 鍵,最後輸入 exit 或者q鍵 並回車 2,g sensor android加速度感測器型別...