Ogre3D嵌入Qt框架 之 小結

2021-04-21 22:36:09 字數 2153 閱讀 5525

public:

ogreview(qwidget* parent );

~ogreview();

//qsize minimumsizehint() const;

//qsize sizehint() const;

protected:

void setupview()//建立ogre使用的內容,場景內容;

void update();//通過它,手動更新場景內容

void setupresources();//

void createscene();

void createlight();

void resizeevent(qresizeevent* evt);//視窗可能縮放

void timerevent(qtimerevent* evt);//可以設一時鐘來更新視窗

void paintevent(qpaintevent* evt);//呵,當然得處理了

//訊息響應

void keypressevent(qkeyevent* evt);

void keyreleaseevent(qkeyevent* evt);

void mousepressevent(qmouseevent* evt);

void mousereleaseevent(qmouseevent* evt);

void mousemoveevent(qmouseevent* evt);

void wheelevent(qwheelevent* evt);

//有關ogre

ogre::renderwindow* mrenderwindow;

ogre::scenemanager* mscenemgr;

ogre::camera* mcamera;

ogre::viewport* mvp;

ogre::root* mroot;

ogre::light* mainlight;

ogre::entity* mainent;

ogre::scenenode* mainnode;

//一些控制變數,沒有完全列出

ogre::vector3 mdirection;

ogre::real mrotate;

};//cpp檔案中的內容(部分)

ogreview::ogreview(qwidget* parent) : qwidget(parent,qt::wflags(qt::mswindowsowndc))

ogreview::~ogreview()

ogre::root::getsingleton().detachrendertarget(mrenderwindow);

mrenderwindow = 0;

if(mroot != null)

}void ogreview::setupresources()

}if(!mroot->restoreconfig())

mroot->initialise(false);

//以上都是從ogre普通程式照搬

}//沒啥說的,**比注釋更明白

void ogreview::createscene()

void ogreview::createlight()

void ogreview::setupview()

void ogreview::paintevent(qpaintevent *evt)

void ogreview::timerevent(qtimerevent* evt)

void ogreview::update()

}void ogreview::resizeevent(qresizeevent *evt)

}void ogreview::keypressevent(qkeyevent* evt)}}

void ogreview::mousepressevent(qmouseevent* evt)

if(evt->button() == qt::midbutton)

mousemiddlebtn = true;

}void ogreview::wheelevent(qwheelevent* evt)

來自:http://www.cppblog.com/yuanyajie/archive/2007/05/21/24528.html

Ogre3D嵌入Qt框架 之 小結

public ogreview qwidget parent ogreview qsize minimumsizehint const qsize sizehint const protected void setupview 建立ogre使用的內容,場景內容 void update 通過它,手動更...

OGRE 3D 程式設計 Ogre 材質1 轉

材質 material 材質是乙個很基本的術語,表示你的物體對光的反射方式。但是對它的實現並不像其解釋這樣簡單,我們會用這一章節進行詳細地介紹ogre中相關的技術。我們剛才提及過,材質定義了物體對光線反射的處理方法。這裡暗示了材質的表現與光源的型別相關 聚光 spotlights 點光源 point...

Ogre3D 實現角色換裝

乙個角色由多個模型組成,這些模型掛在同乙個主節點上,由同乙個骨骼動畫控制著。換裝就是剔除或新增一些模型,如果只是刪增模型,那樣只可以實現一起平移和旋轉。因為裝備,如衣服都是要和身體一起發生形變的。所以,模型之間要統一這些發生形變的方式,那就是骨骼。分類 1.屬於掛接物體,不屬於換裝範疇,建立乙個節點...