資源簡(jiǎn)介
源代碼說明:
1、本源精簡(jiǎn)版第一人稱3D射擊游戲源代碼。
2、本源已創(chuàng)建了三張地圖(地圖文件可任何創(chuàng)建)。
3、本源采用OpenGL,支持鍵盤和鼠標(biāo)操作。
4、引用本源時(shí)請(qǐng)附明原始作者信息。
5、本源非我本人編寫,此處僅用做交流學(xué)習(xí)之用,引用本源時(shí)請(qǐng)自覺附明原始作者信息。
E-mail:Offar@163.com

代碼片段和文件信息
//
//?制作??programking?2009年3月
//?博客??http://blog.csdn.net/programking
//=======================================
//?anmobj.cpp:?implementation?of?the?anmobj?class.
//?學(xué)程序編游戲系列叢書
//?唐明理?E_mail:?cqtmL@163.com
//====================================================================
#include?“stdafx.h“
#include?“anmobj.h“
#include?“opengl.h“
//////////////////////////////////////////////////////////////////////
int?dongzuo[7]={0227121414};
#include?“filereport.h“
//////////////////////////////////////////////////////////////////////
anmobj::anmobj()
{
}
anmobj::~anmobj()
{}
void?anmobj::getobj(CString?na)//
{
anim[0]=anim[1]=NULL;
if(model[0]!=NULL)
{
delete[]?model[0];
model[0]=NULL;
}
if(model[1]!=NULL)
{
delete[]?model[1];
model[1]=NULL;
}
model[0]???=?md2_readModel(na+“tris.md2“);
model[1]???=?md2_readModel(na+“weapon.md2“);
if(model[0]!=NULL)?
{
size[0]?=?md2_getAnimationCount(model[0]);
//?獲取動(dòng)作序列
animations?(model[0]0);//
}
if(model[1]!=NULL)
{
size[1]?=?md2_getAnimationCount(model[1]);
animations?(model[1]1);
}
}
animation*?anmobj::animations?(md2_model_t*?modelint?p)
{
if?(size[p]?==?0)?
return?0;//
if(anim[p]!=NULL)?
delete[]?anim[p];//
anim[p]?=?new?animation[size[p]];//
//設(shè)置該模型的所有動(dòng)畫信息
for?(int?i=0;?i {
//得到動(dòng)畫名稱
strcpy?(anim[p][i].namemd2_getAnimationName(modeli));//
//得到動(dòng)畫起始結(jié)束幀
md2_getAnimationframes(modeli&anim[p][i].start&anim[p][i].end);//
}
return?0;//
}
void?anmobj::drawModel(int?idfloat?xfloat?yfloat?zint?iframeint?iAngle)
{
glPushAttrib(GL_CURRENT_BIT);
glPushMatrix();
glTranslatef(xyz);
//旋轉(zhuǎn)
glRotatef(iAngle*90010);
//縮小
glScaled(.06f.06f.06f);
//role?模型不為空,且?iframe小于最大幀數(shù)
if(model[0]!=NULL?&&?model[0]->header.numframes>iframe)
{
md2_drawModel?(model[0]iframe00);
}
//weapon
if(model[1]!=NULL?&&?model[1]->header.numframes>iframe)
{
md2_drawModel?(model[1]iframe00);
}
glPopMatrix();
glPopAttrib();
}
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件??????18884??2009-03-02?21:34??cs1\3DS.CPP
?????文件???????3889??2009-02-19?21:30??cs1\3DS.H
?????文件???????2162??2009-03-18?20:54??cs1\anmobj.cpp
?????文件???????1023??2009-03-13?17:48??cs1\anmobj.h
?????文件???????6051??1999-02-23?18:46??cs1\anorms.h
?????文件???????3682??2009-03-18?21:35??cs1\cs1.cpp
?????文件???????5555??2009-03-18?20:41??cs1\cs1.dsp
?????文件????????529??2009-02-10?15:43??cs1\cs1.dsw
?????文件????1515566??2009-03-18?21:35??cs1\cs1.exe
?????文件?????140288??2009-03-18?21:35??cs1\cs1.ncb
?????文件??????48640??2009-03-18?21:35??cs1\cs1.opt
?????文件???????1709??2009-03-18?21:35??cs1\cs1.plg
?????文件??????49208??2009-03-18?12:22??cs1\data\images\box0.bmp
?????文件??????49208??2009-03-18?12:23??cs1\data\images\box01.bmp
?????文件??????49208??2009-03-18?12:26??cs1\data\images\box1.bmp
?????文件??????49208??2009-03-18?12:26??cs1\data\images\box11.bmp
?????文件??????49208??2009-03-18?12:26??cs1\data\images\box2.bmp
?????文件??????49208??2009-03-18?12:26??cs1\data\images\box21.bmp
?????文件??????12344??2009-03-18?12:25??cs1\data\images\button.bmp
?????文件??????12344??2009-03-18?12:20??cs1\data\images\h1.bmp
?????文件??????49208??2009-03-18?12:28??cs1\data\images\map2.bmp
?????文件??????49208??2009-03-18?12:28??cs1\data\images\map5.bmp
?????文件?????196664??2009-03-06?18:06??cs1\data\images\start1.bmp
?????文件?????196664??2009-03-18?12:39??cs1\data\images\start2.bmp
????..A.SH.?????94720??2009-03-18?13:02??cs1\data\images\Thumbs.db
?????文件??????49208??2009-03-18?12:27??cs1\data\images\TRIX1.bmp
?????文件????????788??2009-03-18?12:41??cs1\data\map\map.txt
????..A.SH.?????17920??2009-02-23?21:35??cs1\data\md2\role\Thumbs.db
?????文件?????285368??1999-03-03?13:56??cs1\data\md2\role\tris.MD2
?????文件??????43768??2005-03-08?16:37??cs1\data\md2\role\tris.pcx
............此處省略43個(gè)文件信息
評(píng)論
共有 條評(píng)論