Как мне выполнить приложение GamePad?C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Как мне выполнить приложение GamePad?

Сообщение Anonymous »

Я построил геймпад для моего контроллера Xbox 360 с помощью библиотеки Xinput (скопирована из проекта с открытым исходным кодом). Код показан ниже. /> Это приложение не может работать на вашем компьюте Там я получаю: < /p>

Ошибка существует после запуска prelaunchtask < /p>
< /blockquote>
Когда я нажимаю «DEBUG В любом случае» говорит: < /p>

Мемон: программа 'c: /c ++ \ gamepad.exe' не существует »< /p>
< /blockquote>
(см. Pictures) < /p>

xinput 1.4: xinput 1.4. Суды как часть Windows 10, используйте эту версию для создания приложений UWP. < /p>
< /blockquote>
У меня есть ОС Windows 114-бита, так что я думаю, что я не могу использовать библиотеку Xinput? 'm неправильно.

gamepad.cpp < /p>

Код: Выделить всё

#include "Gamepad.h"
#include 
#include 

float normalize(float input, float min, float max);

Gamepad::Gamepad(UINT id) : controllerID(id),
deadzoneX(XINPUT_GAMEPAD_LEFT_THUMB_DEADZONE),
deadzoneY(XINPUT_GAMEPAD_RIGHT_THUMB_DEADZONE)
{
ZeroMemory(&state, sizeof(XINPUT_STATE));
ZeroMemory(&vibration, sizeof(XINPUT_VIBRATION));
}

Gamepad::Gamepad(UINT id, float deadzoneX, float deadzoneY)
: deadzoneX(deadzoneX), deadzoneY(deadzoneY)
{
ZeroMemory(&state, sizeof(XINPUT_STATE));
ZeroMemory(&vibration, sizeof(XINPUT_VIBRATION));
}

UINT Gamepad::getControllerID() const
{
return controllerID;
}
XINPUT_GAMEPAD* Gamepad::getGamepad()
{
return &state.Gamepad;
}
/*XINPUT_BATTERY_INFORMATION* Gamepad::getBatteryInfo()
{
XInputGetBatteryInformation(controllerID, XINPUT_DEVTYPE_GAMEPAD, &battery);
return &battery;
}*/
bool Gamepad::isConnected()
{
if (XInputGetState(controllerID - 1, &state) == ERROR_SUCCESS)
{
return true;
}
else
{
return false;
}
}

float normalize(float input, float min, float max)
{
float average = (min + max) / 2;
float range = (max - min) / 2;
return (input - average) / range;
}

float Gamepad::ApplyDeadzone(float value, float maxValue, float deadzone)
{
if (value < -deadzone)
{
value += deadzone; //increase neg vals to remove deadzone discontinuity
}
else if (value > deadzone)
{
value -= deadzone; //decrease pos vals to remove deadzone discontinuity
}
else
{
return 0; //hey values are zero for once
}
float normValue = (float)value / (float)(maxValue - deadzone);
return std::max(-1.0f, std::min(normValue, 1.0f));
}

bool Gamepad::Update()
{
if (!isConnected())
return false;

float normLX = normalize(static_cast(state.Gamepad.sThumbLX), -32767, 32767);
float normLY = normalize(static_cast(state.Gamepad.sThumbLY), -32767, 32767);

float normRX = normalize(static_cast(state.Gamepad.sThumbRX), -32767, 32767);
float normRY = normalize(static_cast(state.Gamepad.sThumbRY), -32767, 32767);

if (deadzoneX 

Подробнее здесь: [url]https://stackoverflow.com/questions/79439429/how-do-i-get-the-gamepad-application-to-be-executed[/url]
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • C# Controller (GamePad) крючок, который может подавлять/блокировать события
    Anonymous » » в форуме C#
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • C# Controller (GamePad) Крюк, который может подавлять/блокировать события [закрыто]
    Anonymous » » в форуме C#
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Ручка GamePad кнопки в JetPack Compose UI
    Anonymous » » в форуме Android
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Двойная кнопка Touchpad Нажмите, не распознана как кнопка GamePad [закрыто]
    Anonymous » » в форуме Linux
    0 Ответы
    23 Просмотры
    Последнее сообщение Anonymous
  • Я пытаюсь запустить Java-приложение в Eclipse. Когда я пытаюсь выполнить команду «Выполнить» > «Запустить как» > «Прилож
    Anonymous » » в форуме JAVA
    0 Ответы
    154 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C++»