該例子非常簡(jiǎn)單,也曾考慮過是否有必要作為例子,但作為OGF介紹的一部分,最終還是寫上了。
Sample02
簡(jiǎn)介:
系統(tǒng)屬性設(shè)置
目的是修改游戲框架的系統(tǒng)屬性.在基于Sample01范例的基礎(chǔ)上,我們來看看在您的游戲項(xiàng)目中如何調(diào)整框架的屬性,例如:運(yùn)行窗口的標(biāo)題,每秒幀數(shù)....由于框架屬性必須在游戲運(yùn)行前設(shè)置完畢,所以我們要重載在框架運(yùn)行前調(diào)用的GameInit()事件,在該事件內(nèi)就可以設(shè)置框架提供的屬性接口.
1.在GameFrame.h文件重載GameInit()事件(原型:virtual bool __cdecl GameInit();)
2.在GameInit()事件中,添加以下代碼:
//設(shè)置游戲窗口標(biāo)題
m_GameFrameSetting.szWindowTitle = "Your Game Framework Title";
//設(shè)置游戲幀數(shù)
m_GameFrameSetting.wFPS = 20;
//設(shè)置鼠標(biāo)是否顯示
m_GameFrameSetting.bHiddenMouse = false;
//還有其它屬性,請(qǐng)參考GameFrameDlg類的GAMEFRAMESETTING結(jié)構(gòu)體
//顯式調(diào)用基類的GameInit方法來初始化游戲框架
if(__super::GameInit()){
return true;
}
else{
//設(shè)置框架初始化出錯(cuò)的自定義提示信息
m_lpGDI->System_Log("D3D設(shè)備創(chuàng)建失敗!");
//自定義出錯(cuò)處理。寫LOG、輸出。。。
}
return false;
3.編譯并運(yùn)行項(xiàng)目
運(yùn)行結(jié)果:
比起Sample01,變化有兩處:標(biāo)題和鼠標(biāo)顯示
