-
大小: 20.65MB文件類型: .rar金幣: 1下載: 0 次發布日期: 2023-08-02
- 語言: 其他
- 標簽: NeHeOpengGL??教程??代碼??
資源簡介
完整的經典NeHe OpenGL中文教程,及其實驗代碼,還有曾濤的LOD地形模型,僅供學習參考
代碼片段和文件信息
#include?“.\app.h“
#include?“Utility\Mouse.cpp“
#include?“Utility/temp_uilib.cpp“
#define?WM_SELECT_MAP_SIZE (WM_USER?+?1)?
#define?WM_UI_MAIN (WM_SELECT_MAP_SIZE?+?1)?
#define?WM_UI_SET_SELECT_SUB (WM_UI_MAIN?+?1)?
#define?WM_UI_RENDER (WM_UI_SET_SELECT_SUB?+?1)?
#define?WM_UI_CAMERA (WM_UI_RENDER?+?1)?
#define?WM_UI_LIGHT (WM_UI_CAMERA?+?1)?
#define?WM_UI_SUNDRY (WM_UI_LIGHT?+?1)?
static?CApp*?g_pApp?=?NULL;
CApp::CApp()
{
g_pApp?=?this;
m_D3D??=?NULL;
m_hwnd?=?NULL;
m_MousePT.x?=?0;
m_MousePT.y?=?0;
m_AS =?AS_NORMAL;
m_FPS =?0;
m_FPSFactor =?0;
}
CApp::~CApp()
{
safe_release(m_D3D);
m_Mouse.ReleaseMouse();
}
LRESULT?CALLBACK?WndProc(?HWND?hWnd?UINT?uMsg?WPARAM?wParam?LPARAM?lParam?)
{
return?g_pApp->MsgProc(?hWnd?uMsg?wParam?lParam?);
}
bool?CApp::Create(HINSTANCE?hInstanceint?width?int?heightLPCSTR?lpszWndName) ??
{
WNDCLASS?wc;
wc.style =?CS_HREDRAW?|?CS_VREDRAW;
wc.lpfnWndProc =?(WNDPROC)WndProc;?
wc.cbClsExtra =?0;
wc.cbWndExtra =?0;
wc.hInstance =?hInstance;
wc.hIcon =?LoadIcon(0?IDI_APPLICATION);
wc.hCursor =?LoadCursor(0?IDC_ARROW);
wc.hbrBackground =?(HBRUSH)GetStockobject(BLACK_BRUSH);
wc.lpszMenuName =?0;
wc.lpszClassName =?“LODTerrainApp“;
if(?!RegisterClass(&wc)?)?
{
::MessageBox(0?“注冊窗口失敗“?0?0);
return?false;
}
LONG?cpSzie?=?GetSystemMetrics(SM_CYCAPTION);
LONG?xdlgSzie?=?GetSystemMetrics(SM_CXDLGframe);
LONG?ydlgSzie?=?GetSystemMetrics(SM_CXDLGframe);
LONG?exW?=?xdlgSzie*2?+?width;
LONG?exH?=?ydlgSzie*2?+?cpSzie?+?height;
LONG?scSzieW?=?GetSystemMetrics(SM_CXSCREEN);
LONG?scSzieH?=?GetSystemMetrics(SM_CYSCREEN);
LONG?PosX?=?(scSzieW?-?exW)/2;
LONG?PosY?=?(scSzieH?-?exH)/2?-?cpSzie;
m_hwnd?=?::CreateWindow(
“LODTerrainApp“
lpszWndName?
WS_EX_TOPMOST
PosX?PosY?exW?exH
0?0?hInstance?0 );?
if(?!m_hwnd?)
{
::MessageBox(0?“創建窗口失敗“?0?0);
return?false;
}
?
??
m_width?=?width;
m_height?=?height;
::ShowWindow(m_hwnd?SW_SHOW);
::UpdateWindow(m_hwnd);
//初始化設備
InitDevice();
//初始化3d環境
InitD3DEnvironment();
return?true;
}
bool?CApp::InitDevice()
{
IDirect3D9*?d3d9?=?0;
d3d9?=?Direct3DCreate9(D3D_SDK_VERSION);
if(?!d3d9?)
{
::MessageBox(0?“設備創建接口創建失敗“?0?0);
return?false;
}
D3DDEVTYPE?D3DDT?=?D3DDEVTYPE_HAL;
//?Step?2:?Check?for?hardware?vp.
D3DCAPS9?caps;
d3d9->GetDeviceCaps(D3DADAPTER_DEFAULT?D3DDT?&caps);
int?vp?=?0;
if(?caps.DevCaps?&?D3DDEVCAPS_HWTRANSFORMANDLIGHT?)
vp?=?D3DCREATE_HARDWARE_VERTEXPROCESSING;
else
vp?=?D3DCREATE_SOFTWARE_VERTEXPROCESSING;
//vp?=?D3DCREATE_SOFTWARE_VERTEXPROCESSING;
//?Step?3:?Fill?out?the?D3DPRESENT_PARAMETERS?structure.
D3DPRESENT_PARAMETERS?d3dpp;
d3dpp.BackBufferWidth =?m_width;
d3dpp.BackBufferHeight =?m_height;
d3dpp.BackBu
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????7879394??2017-02-24?10:02??曾濤地形模型和NeHeOpenGL教程\NeHe?OpenGL中文教程+源代碼.zip
?????文件????????909??2010-07-20?14:52??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Backup\LODTerrain.sln
????..A..H.?????13312??2011-01-19?20:39??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Backup\LODTerrain.v12.suo
?????文件????4379984??2008-10-10?04:52??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\D3DX9_40.dll
?????文件????1014952??2017-03-09?09:36??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\App.obj
?????文件??????72904??2017-03-09?09:36??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\Camera.obj
?????文件?????249607??2017-03-09?09:36??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\LOD.obj
?????文件???????2434??2017-03-09?09:50??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\LODTerrain.log
?????文件???????4050??2017-03-09?09:50??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\LODTerrain.tlog\cl.command.1.tlog
?????文件?????191338??2017-03-09?09:50??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\LODTerrain.tlog\CL.read.1.tlog
?????文件???????2578??2017-03-09?09:50??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\LODTerrain.tlog\CL.write.1.tlog
?????文件???????1914??2017-03-09?09:50??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\LODTerrain.tlog\li
?????文件???????4614??2017-03-09?09:50??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\LODTerrain.tlog\li
?????文件????????842??2017-03-09?09:50??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\LODTerrain.tlog\li
?????文件????????162??2017-03-09?09:50??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\LODTerrain.tlog\LODTerrain.lastbuildstate
?????文件??????58365??2017-03-09?09:36??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\mymath.obj
?????文件?????232830??2017-03-09?09:36??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\Shaders.obj
?????文件?????550275??2017-03-09?09:50??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\Terrain.obj
?????文件????1182720??2017-03-09?09:50??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\vc120.idb
?????文件????1028096??2017-03-09?09:50??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\vc120.pdb
?????文件??????57012??2017-03-09?09:36??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\Debug\WinMain.obj
?????文件????????903??2010-08-10?14:03??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\GameRes?Readme.txt
?????文件????1465344??2017-03-09?09:50??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\LODTerrain.exe
?????文件????3119404??2017-03-09?09:50??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\LODTerrain.ilk
?????文件???42663936??2017-09-13?09:30??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\LODTerrain.sdf
?????文件????????960??2017-03-09?09:36??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\LODTerrain.sln
?????文件??????13312??2011-01-19?20:39??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\LODTerrain.suo
????..A..H.?????31744??2017-09-13?09:30??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\LODTerrain.v12.suo
?????文件???????4506??2011-01-19?18:42??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\LODTerrain.vcproj
?????文件???????5882??2017-03-09?09:36??曾濤地形模型和NeHeOpenGL教程\ztLODTerrain\LODTerrain.vcxproj
............此處省略52個文件信息
- 上一篇:GitHub入門與實踐.pdf
- 下一篇:2017美賽優秀論文 + latex模板
評論
共有 條評論