working on game controller input
This commit is contained in:
@@ -125,15 +125,27 @@ bool Director::initSDL()
|
||||
bool success = true;
|
||||
|
||||
// Inicializa SDL
|
||||
//if (SDL_Init(SDL_INIT_VIDEO | SDL_INIT_JOYSTICK | SDL_INIT_GAMECONTROLLER| SDL_INIT_AUDIO | SDL_INIT_HAPTIC) < 0)
|
||||
if (SDL_Init(SDL_INIT_EVERYTHING) < 0)
|
||||
if (SDL_Init(SDL_INIT_VIDEO | SDL_INIT_GAMECONTROLLER | SDL_INIT_AUDIO | SDL_INIT_HAPTIC) < 0)
|
||||
//if (SDL_Init(SDL_INIT_EVERYTHING) < 0)
|
||||
{
|
||||
printf("SDL could not initialize!\nSDL Error: %s\n", SDL_GetError());
|
||||
success = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
SDL_JoystickEventState(SDL_ENABLE);
|
||||
if (SDL_WasInit(SDL_INIT_GAMECONTROLLER) != 1)
|
||||
SDL_InitSubSystem(SDL_INIT_GAMECONTROLLER);
|
||||
|
||||
int nJoysticks = SDL_NumJoysticks();
|
||||
int numGamepads = 0;
|
||||
|
||||
// Count how many controllers there are
|
||||
for (int i = 0; i < nJoysticks; i++)
|
||||
if (SDL_IsGameController(i))
|
||||
numGamepads++;
|
||||
|
||||
printf("%i nJoysticks, %i numGamepads\n", nJoysticks, numGamepads);
|
||||
//SDL_JoystickEventState(SDL_ENABLE);
|
||||
|
||||
// Establece el filtro de la textura a nearest
|
||||
if (!SDL_SetHint(SDL_HINT_RENDER_SCALE_QUALITY, "0"))
|
||||
|
||||
@@ -15,8 +15,10 @@ Input::Input(int source)
|
||||
mGameControllerBindings[i].active = false;
|
||||
}
|
||||
|
||||
mGameControllerFound = false;
|
||||
|
||||
// Comprueba si hay algún mando conectado
|
||||
discoverGameController();
|
||||
//discoverGameController();
|
||||
|
||||
// En caso de haber un mando, el objeto se puede utilizar con entradas de mando
|
||||
if (mGameControllerFound)
|
||||
@@ -186,6 +188,7 @@ bool Input::checkInput(Uint8 input, bool repeat)
|
||||
// Comprueba si hay un mando conectado
|
||||
bool Input::discoverGameController()
|
||||
{
|
||||
|
||||
printf("%i joystics found", SDL_NumJoysticks());
|
||||
for (int i = 0; i < SDL_NumJoysticks(); ++i)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user