• 大小: 3.81MB
    文件类型: .rar
    金币: 2
    下载: 0 次
    发布日期: 2024-01-23
  • 语言: 其他
  • 标签:

资源简介

会有一个小飞机,可以用键盘操作,用它来消灭敌人,用到了简单的碰撞检测的技术

资源截图

代码片段和文件信息

//=============================================================================
// Desc: 飞机发子弹
//=============================================================================
#include 
#include 
#include 
#include 
#include 
using namespace std;
#define SAFE_RELEASE(p)      { if(p) { (p)->Release(); (p)=NULL; } }
#define SAFE_DELETE(p)       { if(p) { delete (p);     (p)=NULL; } }
#define SAFE_DELETE_ARRAY(p) { if(p) { delete[] (p);   (p)=NULL; } }
//-----------------------------------------------------------------------------
// Desc: 全局变量
//-----------------------------------------------------------------------------
LPDIRECT3D9             g_pD3D           = NULL;  //Direct3D对象
LPDIRECT3DDEVICE9       g_pd3dDevice     = NULL;  //Direct3D设备对象
BOOL g_Paint          = FALSE;


BYTE  m_bKey[256]; // keyboard state buffer

D3DXMATRIX              g_matWorld;

D3DLIGHT9 g_light0;

int g_flag=0;
//-----------------------------------------------------------------------------
//时间
//-----------------------------------------------------------------------------
struct Timer
{
static LARGE_INTEGER   startTime;
static LARGE_INTEGER   ticksPerSecond;
};
LARGE_INTEGER Timer::startTime;
LARGE_INTEGER Timer::ticksPerSecond;



BOOL TimerInit()
{
if (!QueryPerformanceFrequency(&Timer::ticksPerSecond))
{
return FALSE;// 系统不支持高分辨率计时器
}

else
{
QueryPerformanceCounter(&Timer::startTime);
return TRUE;
}
}

/**\brief
* 获得经过的时间
*/
float GetElapsedSeconds(float lastTime)
{
//static LARGE_INTEGER s_lastTime = Timer::startTime;
LARGE_INTEGER currentTime;

QueryPerformanceCounter(¤tTime);

float seconds=((float)currentTime.QuadPart/(float)Timer::ticksPerSecond.QuadPart)-lastTime;

return seconds;
}

//获取开始时间
float GetStartSeconds()
{
LARGE_INTEGER currentTime;
QueryPerformanceCounter(¤tTime);
float seconds=(float)currentTime.QuadPart/(float)Timer::ticksPerSecond.QuadPart;
return seconds;
}
//输出FPS
VOID PrintFPS()
{
static float curTime=GetStartSeconds();
static float elapsetime=0.0;
elapsetime = GetElapsedSeconds(curTime);
curTime =GetStartSeconds();

static float second=0;
static int fps=0;
second+=elapsetime;
fps++;
if (second>1.0)
{
char buff[256];
sprintf(buff“%d\n“fps);
OutputDebugStringA(buff);
second=0;
fps=0;
}
}
//-----------------------------------------------------------------------------
// Desc: 顶点结构
//-----------------------------------------------------------------------------
struct  CUSTOMVERTEX
{
float x y z;    //顶点位置a
float uv ;   //顶点纹理坐标
};
#define D3DFVF_CUSTOMVERTEX   (D3DFVF_XYZ|D3DFVF_TEX1)



//爆炸效果结构体
struct blasteffect
{
static  LPDIRECT3DVERTEXBUFFER9 pvb;
static LPDIRECT3DTEXTURE9 ptext[25];
D3DXVECTOR3 position;
float timeperframe;
float timeoneframe;
float scale;
int iCurTex;
D3DXMATRIX mat;


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     161266  2007-04-02 16:54  飞机发子弹\airplane.x

     文件     480915  2002-09-20 15:06  飞机发子弹\bigship1.x

     文件      66616  2007-04-02 16:54  飞机发子弹\bihull.bmp

     文件    4499280  2008-10-28 01:37  飞机发子弹\D3dx9d_40.dll

     文件    4379984  2008-10-10 04:52  飞机发子弹\D3DX9_40.dll

     文件      41297  2007-04-02 16:55  飞机发子弹\heli.x

     文件      65664  2001-10-28 10:28  飞机发子弹\Laser.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode00.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode01.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode02.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode03.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode04.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode05.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode06.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode07.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode08.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode09.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode10.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode11.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode12.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode13.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode14.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode15.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode16.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode17.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode18.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode19.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode20.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode21.dds

     文件      16512  2007-04-02 17:05  飞机发子弹\Media\explode22.dds

............此处省略23个文件信息

评论

共有 条评论

相关资源