之前本來就有這樣的打算的,學了一點hge引擎之後,再回過頭來看dx的sdk,會容易一些。
就像我之前,做過乙個mfc的課程設計之後,現在回過頭來學孫鑫的第一集win32sdk會更容易理解。
這樣做的好處就是:在你看不懂的時候仍然能做出東西來,讓你不灰心,有興趣學下去。
如果我開始就看dx的話難度肯定比現在大。而我現在雖然不懂dx,但是也有過開發幾個小遊戲專案的經驗了,而且hge本身就是基於dx8的這麼乙個引擎,很大程度上還是保留了一些dx的習慣,所以我現在覺得簡單多了。
其實不止是c++,php我也是現在直接用thinkphp,asp我用的是easyasp,弄來弄去都是框架之類的東西,kiss原則。
好了,閒話不多說,上程式。
這個程式能實現的功能是——————————好吧,不是hello world,而只是乙個黑屏。將螢幕以dx的方式渲染成黑色。
code:
#include
#include
#pragma comment (lib, "d3d9.lib")
#pragma comment (lib, "d3dx9.lib")
~ws_maximizebox &/
~ws_thickframe)
/** directx物件和裝置 */
lpdirect3d9 g_d3d = null;
lpdirect3ddevice9 g_d3ddevice = null;
/**
* @brief 關閉函式
* 退出程式時釋放d3d相關資源
*/void shutdown()
/**
* @brief 渲染函式
* 將螢幕渲染成黑色
*/void renderscene()
/** 初始化d3d */
bool initialized3d(hwnd hwnd, bool fullscreen)
else
d3***.swapeffect = d3dswapeffect_discard;
d3***.backbufferformat = displaymode.format;
/** 建立裝置 */
if(failed(g_d3d->createdevice(d3dadapter_default,
d3ddevtype_hal, hwnd, d3dcreate_software_vertexprocessing,
&d3***, &g_d3ddevice))) return
false;
return
true;
}
lresult winapi winproc(hwnd hwnd, uint msg, wparam wparam, lparam lparam)
return defwindowproc(hwnd, msg, wparam, lparam);
}
int winapi winmain(hinstance hinstance, hinstance hprevinstance, lpstr, int)
else
}
shutdown();
}
return 0;
}
我的第乙個程式
我的第乙個vc程式終於寫完了,花了2周,之前從沒有用vc寫過程式,也沒讀過什麼程式,只是在看書,看了幾百頁 mfc windows程式設計 正好有個機會,老師讓寫個vc程式,就試著寫了。程式的功能是不同地方的access的更新的記錄整合到一台機子上的access中,支援斷網自動連線,用的是socke...
我的第乙個MFC程式
class cmainframe public cframewnd protected afx msg void onlbuttondown uint nflags,cpoint point declare message map begin message map cmainframe,cfram...
我的第乙個socket程式!
哈哈,終於寫了第乙個socket程式!但願是個good beginning 客戶端 include stdafx.h include include iostream pragma ment lib,ws2 32.lib int main intargc char argv 初始化socket so...