本文整理汇总了C++中Gamepad::update方法的典型用法代码示例。如果您正苦于以下问题:C++ Gamepad::update方法的具体用法?C++ Gamepad::update怎么用?C++ Gamepad::update使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Gamepad
的用法示例。
在下文中一共展示了Gamepad::update方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: lua_Gamepad_update
int lua_Gamepad_update(lua_State* state)
{
// Get the number of parameters.
int paramCount = lua_gettop(state);
// Attempt to match the parameters to a valid binding.
switch (paramCount)
{
case 2:
{
if ((lua_type(state, 1) == LUA_TUSERDATA) &&
lua_type(state, 2) == LUA_TNUMBER)
{
// Get parameter 1 off the stack.
float param1 = (float)luaL_checknumber(state, 2);
Gamepad* instance = getInstance(state);
instance->update(param1);
return 0;
}
lua_pushstring(state, "lua_Gamepad_update - Failed to match the given parameters to a valid function signature.");
lua_error(state);
break;
}
default:
{
lua_pushstring(state, "Invalid number of parameters (expected 2).");
lua_error(state);
break;
}
}
return 0;
}
示例2: main
int main(int argc, char ** argv) {
std::cout << "Starting Controller Mouse Emulator" << std::endl;
float mouseSpeed = 15;
float scrollSpeed = 25;
MouseInput mouseInput;
Gamepad gamepad;
int dx, dy;
int sy;
while (true) {
gamepad.update();
dx = (int)(gamepad.getLThumbX() * mouseSpeed);
dy = (int)(-gamepad.getLThumbY() * mouseSpeed);
sy = (int)(gamepad.getRThumbY() * scrollSpeed);
mouseInput.moveMouse(dx, dy);
mouseInput.scrollWheel(sy);
if (gamepad.aPressed())
mouseInput.setLeftMouseDown(true);
else if (gamepad.aReleased())
mouseInput.setLeftMouseDown(false);
if (gamepad.bPressed())
mouseInput.setRightMouseDown(true);
else if (gamepad.bReleased())
mouseInput.setRightMouseDown(false);
if (gamepad.rsPressed())
mouseInput.setMiddleMouseDown(true);
else if (gamepad.rsReleased())
mouseInput.setMiddleMouseDown(false);
if (gamepad.rbPressed() && mouseSpeed < MAX_MOUSE_SPEED) {
mouseSpeed += SPEED_INCREMENT;
std::cout << "Mouse speed: " << mouseSpeed << std::endl;
}
if (gamepad.lbPressed() && mouseSpeed > SPEED_INCREMENT) {
mouseSpeed -= SPEED_INCREMENT;
std::cout << "Mouse speed: " << mouseSpeed << std::endl;
}
gamepad.updateInput();
Sleep(15);
}
return 0;
}
示例3: main
int main(int argc, char* args[])
{
const int width=800, height=600, bpp=32;
const char* caption = "FPS";
if (SDL_Init(SDL_INIT_EVERYTHING) < 0)
return 1;
if (SDL_SetVideoMode(width, height, bpp, SDL_OPENGL) == 0)
return 2;
// vsync
SDL_GL_SetAttribute(SDL_GL_SWAP_CONTROL, 1);
SDL_WM_SetCaption(caption, 0);
//
Game* game = CreateGame(width, height);
Gamepad* gamepad = CreateGamepad();
Uint32 accum = 0;
Uint32 lastTick = SDL_GetTicks();
while (doLoop) {
const Uint32 now = SDL_GetTicks();
accum += now-lastTick;
lastTick = now;
while (accum > TICKS_PER_FRAME) {
gamepad->update();
game->update(*gamepad);
accum -= TICKS_PER_FRAME;
}
game->render();
// delay some amount of time to play nice with the OS
// this value can be tweaked
SDL_Delay(1);
}
delete game;
delete gamepad;
SDL_Quit();
return 0;
}