資源簡介
我自己寫的小游戲,雖然有些簡陋但是絕對是初學者的好東西,代碼也不長便于閱讀,希望能對您有所幫助,用的是DX9,下載后您需要在工程中修改一下DX頭文件的路徑.在XP下測試過,用的是VS2005,VC++程序!歡迎大家來我的博客http://hi.baidu.com/d_b_mike

代碼片段和文件信息
#include?“autocar.h“
#include?
const?double?pi?=?3.1415926;
autocar::autocar(void)
{
}
autocar::autocar(LPDIRECT3DDEVICE9?thed3dDevice)
{
//m_pd3dDevice?=?thed3dDevice;
}
autocar::~autocar(void)
{
}
HRESULT?autocar::InitCar(LPDIRECT3DDEVICE9?thed3dDeviceint?x)
{
/////////////////////加載車模型///////////////////////////////////
m_pd3dDevice?=?thed3dDevice;
LPD3DXBUFFER?bufShipMaterial;
D3DXLoadMeshFromX(L“player.x“????//?load?this?file
??????????????????D3DXMESH_SYSTEMMEM????//?load?the?mesh?into?system?memory
??????????????????m_pd3dDevice????//?the?Direct3D?Device
??????????????????NULL????//?we?aren‘t?using?adjacency
??????????????????&bufShipMaterial????//?put?the?materials?here
??????????????????NULL????//?we?aren‘t?using?effect?instances
??????????????????&m_numMaterials????//?the?number?of?materials?in?this?model
??????????????????&meshCar);????//?put?the?mesh?here
//?retrieve?the?pointer?to?the?buffer?containing?the?material?information
D3DXMATERIAL*?tempMaterials?=?(D3DXMATERIAL*)bufShipMaterial->GetBufferPointer();
//?create?a?new?material?buffer?and?texture?for?each?material?in?the?mesh
material?=?new?D3DMATERIAL9[m_numMaterials];
texture?=?new?LPDIRECT3DTEXTURE9[m_numMaterials];
for(DWORD?i?=?0;?i? {
material[i]?=?tempMaterials[i].MatD3D;????//?get?the?material?info...
material[i].Ambient?=?material[i].Diffuse;????//?and?make?ambient?the?same?as?diffuse
USES_CONVERSION;????//?allows?certain?string?conversions
//?if?there?is?a?texture?to?load?load?it
if(FAILED(D3DXCreateTextureFromFile(m_pd3dDeviceCA2W(tempMaterials[i].pTextureFilename)&texture[i])))
texture[i]?=?NULL;????//?if?there?is?no?texture?set?the?texture?to?NULL
}
/////////////////標定車在屏幕中位置/////////////////////////////////
D3DXMatrixTranslation(&m_meshCar(float)x3.00.0); //車在跑道上的位置30為車在跑道上的位置3為車高
m_carPoint?=?D3DXVECTOR3(3500);
/////////////////標定初始車的方向////////////////////////////////////
m_shipAngle?=?0;
this->m_carDirect?=?D3DXVECTOR3(001);
////////////////設置跑道參數/////////////////////////////
m_inTrcDiam?=?25;
m_outTrcDiam?=?40;
///////設置矩陣參數////////////////////////////
D3DXMatrixIdentity(&m_carWorldY);
D3DXMatrixIdentity(&m_carWorldX);??//D3DXMatrixIdentity為創建E矩陣
D3DXMatrixIdentity(&m_carWorldZ);
//////////////其他參數設置/////////////////////////
m_lockFlagOut?=?0;
m_lockFlagIn??=?0;
return?S_OK;;
}
void?autocar::Render()
{
//m_pd3dDevice->BeginScene();
GetNewPos();
m_pd3dDevice->SetTransform(D3DTS_WORLD&(m_carWorldZ*m_carWorldY*m_carWorldX*m_meshCar));
for(DWORD?i?=?0;?i? {
m_pd3dDevice->SetMaterial(&material[i]);????//?set?the?material?for?the?subset
if(texture[i]?!=?NULL)????//?if?the?subset?has?a?texture?(if?texture?is?not?NULL)
m_pd3dDevice->SetTexture(0?texture[i]);????//?...then?set?the?tex
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
????..AD...?????????0??2008-11-13?21:52??俞東寶UBITest_1\src
?????文件????????883??2008-11-03?16:35??俞東寶UBITest_1\prj\forUbi\forUbi.sln
????..A..H.?????54784??2008-11-13?21:30??俞東寶UBITest_1\prj\forUbi\forUbi.suo
?????文件???????4629??2008-11-10?17:05??俞東寶UBITest_1\prj\forUbi\forUbi\forUbi.vcproj
?????文件???????1427??2008-11-13?21:30??俞東寶UBITest_1\prj\forUbi\forUbi\forUbi.vcproj.USER-038F698E48.user.user
?????文件??????22951??2003-01-27?08:16??俞東寶UBITest_1\prj\forUbi\forUbi\pla
?????文件??????????0??2005-11-11?22:39??俞東寶UBITest_1\prj\forUbi\forUbi\game.h
?????文件?????196664??2001-02-07?18:31??俞東寶UBITest_1\prj\forUbi\forUbi\mapcop.bmp
?????文件??????34362??2008-11-13?20:38??俞東寶UBITest_1\prj\forUbi\forUbi\D3D.cpp
?????文件?????196662??2003-01-17?10:57??俞東寶UBITest_1\prj\forUbi\forUbi\map1.bmp
?????文件???????3385??2008-11-13?17:31??俞東寶UBITest_1\prj\forUbi\forUbi\game.cpp
?????文件??????66616??2005-03-16?10:22??俞東寶UBITest_1\prj\forUbi\forUbi\seafloor.bmp
?????文件???????1277??2008-11-11?17:06??俞東寶UBITest_1\prj\forUbi\forUbi\autocar.h
?????文件???????2213??2008-11-11?17:06??俞東寶UBITest_1\prj\forUbi\forUbi\D3D.h
?????文件??????32982??2008-11-04?16:19??俞東寶UBITest_1\prj\forUbi\forUbi\start.bmp
?????文件??????39734??2008-11-04?17:13??俞東寶UBITest_1\prj\forUbi\forUbi\road2.bmp
?????文件??????50390??2008-11-04?16:35??俞東寶UBITest_1\prj\forUbi\forUbi\road.bmp
?????文件???????9056??2008-11-13?20:47??俞東寶UBITest_1\prj\forUbi\forUbi\autocar.cpp
?????目錄??????????0??2008-11-13?21:52??俞東寶UBITest_1\prj\forUbi\forUbi
?????目錄??????????0??2008-11-13?21:52??俞東寶UBITest_1\prj\forUbi
????..AD...?????????0??2008-11-13?21:52??俞東寶UBITest_1\prj
?????文件??????36864??2008-11-13?21:32??俞東寶UBITest_1\output\forUbi.exe
?????文件?????196662??2003-01-17?10:57??俞東寶UBITest_1\output\map1.bmp
?????文件?????196664??2001-02-07?18:31??俞東寶UBITest_1\output\mapcop.bmp
?????文件??????22951??2003-01-27?08:16??俞東寶UBITest_1\output\pla
?????文件??????39734??2008-11-04?17:13??俞東寶UBITest_1\output\road2.bmp
?????文件??????50390??2008-11-04?16:35??俞東寶UBITest_1\output\road.bmp
?????文件??????66616??2005-03-16?10:22??俞東寶UBITest_1\output\seafloor.bmp
?????文件??????32982??2008-11-04?16:19??俞東寶UBITest_1\output\start.bmp
????..A.SH.?????29184??2008-11-13?21:53??俞東寶UBITest_1\output\Thumbs.db
............此處省略9個文件信息
評論
共有 條評論