本文整理汇总了C++中Window::GetInputHandler方法的典型用法代码示例。如果您正苦于以下问题:C++ Window::GetInputHandler方法的具体用法?C++ Window::GetInputHandler怎么用?C++ Window::GetInputHandler使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Window
的用法示例。
在下文中一共展示了Window::GetInputHandler方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: MainLoop
UINT MainLoop(WindowManager *winmgr)
{
//window setting
Window window;
winmgr->RegisterWindow(&window);
ARSG g(window.hWnd, WINDOW_WIDTH, WINDOW_HEIGHT, true);
ARSI *keyIn = window.GetInputHandler();
ARSS s;
Sound bgm, badend, atk;
s.CreateSoundBuffer(&atk, L"../sound/atk.wav");
s.CreateSoundBuffer(&bgm, L"../sound/bgm.wav");
s.CreateSoundBuffer(&badend, L"../sound/fadein.wav");
//Texture
Texture board;
Texture bg;
Texture mask;
Texture gameover;
Texture clear;
//BitPlane
BitPlane source;
BitPlane stored;
BitPlane hitArea;
BitPlane bitmask;
//Light
Light light;
g.CreateLight(&light);
light.SetLightIntensity(10);
//Camera
ARSD d;
d.Init();
d.AttachCam(0);
d.BindBitPlane(&source);
d.StartGraph();
while (!source.GetPointer());
source.GetSize(&sizex, &sizey, &depth);
source.CopyTo(&stored);
//background
g.CreateTexture(&bg, L"../img/bgbg.jpg");
bg.SetDrawMode(true);
g.CreateTexture(&mask, L"../img/mask.jpg");
mask.SetDrawMode(true);
mask.GetBitData(&bitmask);
g.CreateTexture(&board, sizex, sizey);
board.SetDrawMode(true);
Mesh f;
g.CreateMesh(&f, L"../model/f4.x");
float scale=25.0f;
f.SetScale(scale, scale, scale, GL_ABSOLUTE);
f.SetPosition(45.0f, -4.0f, 65.0f, GL_ABSOLUTE);
f.SetRotationY(1.57f);
g.CreateTexture(&gameover, L"../img/gameover.jpg");
gameover.SetDrawMode(true);
g.CreateTexture(&clear, L"../img/clear.PNG");
gameover.SetDrawMode(true);
//gun
Gun gun(&g, &s, L"gun2.x", L"../sound/gun2.wav");
gun.DefaultPosition(0.0f, -1.2f, -17.0f);
gun.SetRotation(-0.1f, 3.14f, 0.0f, GL_ROTXYZ, GL_ABSOLUTE);
//enemy
int i, j;
Batman bats[BAT];
for(i=0,j=-1; i<BAT; ++i,j*=-1){
new(bats+i)Batman(j*3.0f, 5.0f, 25.0f, j*-1*0.02f, -0.03f, -0.25f, j*-1*0.04f);
bats[i].setting(&g, L"../model/bat.x");
}
Bone bons[BONE];
for(i=0; i<BONE; ++i){
new(bons+i)Bone(i*2, -4.8f, 20.0f, 0.0f, 0.01f, -0.25f);
bons[i].setting(&g, L"../model/bone.x");
}
Boss boss(0.0f, -8.0f, 5.0f);
boss.setSize(3.0f);
boss.setting(&g, L"../model/teki.x");
//add
g.RegisterLight(&light);
g.RegisterShape(&bg);
g.RegisterShape(&f);
for(i=0; i<BAT; ++i)
g.RegisterShape(&bats[i]);
g.RegisterShape(&board);
g.RegisterShape(&gun);
Effect e(&g);
Player p(&g);
enum {START, BAD, SCARLE, ARMER, BOSS, GAMEOVER, END};
int state = START;
unsigned int cnt=0;
j=0;
bgm.Play(true);
while (!winmgr->WaitingForTermination()){
if (keyIn->GetKeyTrig('A'))
source.CopyTo(&stored);
//.........这里部分代码省略.........