資源簡介
dx9_2d_demo_game directx9實現(xiàn)2D游戲例程
是一個用Direct9 寫的一個2D 飛機游戲

代碼片段和文件信息
//-----------------------------------------------------------------------------
//???????????Name:?dx9_2d_demo_game.cpp
//?????????Author:?Kevin?Harris?(kevin@codesampler.com)
//??Last?Modified:?10/04/04
//????Description:?2D?Sample?game?written?in?DirectX?9.0
//???????Controls:?Use?the?arrow?keys?to?move?and?the?space?bar?to?shoot!
//-----------------------------------------------------------------------------
#define?STRICT
#define?WIN32_LEAN_AND_MEAN
#define?INITGUID
#define?DIRECTINPUT_VERSION?0x0800
#include?
#include?
#include?
#include?
#include?
#include?“resource.h“
#include?“sprite.h“
#include?
using?namespace?std;
//-----------------------------------------------------------------------------
//?SYMBOLIC?CONSTANTS
//-----------------------------------------------------------------------------
const?int?SCREEN_WIDTH????=?800;
const?int?SCREEN_HEIGHT???=?600;
const?int?SCREEN_BPP??????=?16;
const?int?TOTAL_STARS?????=?100;
const?int?TOTAL_PARTICLES?=?250;
const?int?SHIP_SPEED??????=?5;
//-----------------------------------------------------------------------------
//?MACROS
//-----------------------------------------------------------------------------
#define?SAFE_DELETE(p)??{?if(p)?{?delete?(p);?????(p)=NULL;?}?}
#define?SAFE_RELEASE(p)?{?if(p)?{?(p)->Release();?(p)=NULL;?}?}
#define?KEYDOWN(namekey)?(name[key]?&?0x80)
//-----------------------------------------------------------------------------
//?GLOBALS
//-----------------------------------------------------------------------------
HWND?????????????????g_hWnd???????=?NULL;
LPDIRECT3D9??????????g_pD3D???????=?NULL;
LPDIRECT3DDEVICE9????g_pd3dDevice?=?NULL;
LPDIRECTINPUT8???????g_lpdi???????=?NULL;
LPDIRECTINPUTDEVICE8?g_pKeyboard??=?NULL;
RECT??g_rcWindow;
RECT??g_rcViewport;
RECT??g_rcScreen;
BOOL??g_bWindowed???????=?true;
BOOL??g_bActive?????????=?false;
DWORD?g_dwLastFireTick??=?0;
int???g_nShipsLeft??????=?3;
int???g_nScore??????????=?0;
int???g_nPowerLevel?????=?20;
int???g_nCurrentLevel???=?0;
double?g_dElpasedTime;
double?g_dCurTime;
double?g_dLastTime;
double?g_dAnimationTimer?=?0.0;
struct?STAR
{
????int?x;??????????//?Star?posit?x
????int?y;??????????//?Star?posit?y
????int?nVelocity;??//?Star?velocity
????COLORREF?color;?//?Star?color
};
STAR?g_stars[TOTAL_STARS];?//?Star?field?array
struct?PARTICLE
{
????int??x;??????????//?Particle?posit?x
????int??y;??????????//?Particle?posit?y
????int??nVelocity;??//?Particle?velocity
????bool?bVisible;???//?Is?particle?visible?or?active
????COLORREF?color;??//?Particle?color
};
PARTICLE?g_exhaust[TOTAL_PARTICLES];?//?Particle?array?for?engine?exhaust
//?Create?a?linked?list?with?STL?to?hold?and?manage?CSprite?objects
typedef?list?SPRITELIST;
SPRITELIST?g_SpriteList;
SPRITELIST::iterator?g_sprite_i;
SPRITELIST::iterator?g_sprite_j;
SPRITELIST::iterator?g_sprit
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????7406??2003-10-07?09:50??dx9_2d_demo_game\codesampler.ico
?????文件???????65831??2004-10-04?10:53??dx9_2d_demo_game\dx9_2d_demo_game.cpp
?????文件????????4609??2004-04-05?16:13??dx9_2d_demo_game\dx9_2d_demo_game.dsp
?????文件??????536576??2004-10-14?23:41??dx9_2d_demo_game\dx9_2d_demo_game.exe
?????文件????????2557??2003-10-07?10:50??dx9_2d_demo_game\dx9_2d_demo_game.rc
?????文件????????5158??2004-04-05?17:29??dx9_2d_demo_game\dx9_2d_demo_game.vcproj
?????文件???????21536??2001-01-23?15:03??dx9_2d_demo_game\explosion.bmp
?????文件??????746552??2001-02-20?11:45??dx9_2d_demo_game\fighter.bmp
?????文件??????120056??2001-03-14?17:32??dx9_2d_demo_game\misc.bmp
?????文件???????15068??2001-01-30?10:10??dx9_2d_demo_game\numbers.bmp
?????文件?????????826??2000-09-22?08:07??dx9_2d_demo_game\resource.h
?????文件???????22824??2004-10-04?10:52??dx9_2d_demo_game\sprite.cpp
?????文件????????6832??2004-10-04?10:52??dx9_2d_demo_game\sprite.h
- 上一篇:修片動作photoshop修片用的磨皮動作)
- 下一篇:USB MIDI 技術文檔
評論
共有 條評論