Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Version 1.1
- Applications no longer have to call
CoInitialize
. - Fixed missing device disconnect notifications.
- Fixed
FindDeviceFromId
method not returning requested device. - Fixed compiler compatibility issues in header.
- Stability and performance improvements.
Version 1.0
- Added support for reading callbacks.
- Added support for trackpads.
- Added support for absolute mouse coordinates.
- Added support for remote sessions.
- Exposed additional device information, including PnP path and display name.
- Removed deprecated APIs, fields, and constants.
While this version of GameInput is applicable to PC only, if you are using a previous version of GameInput on PC, or sharing code with GameInput on Xbox using the GDK, please note that many unimplemented functions and corresponding enums and constants have been removed. Additionally, the API has been placed in the GameInput::v1
namespace to facilitate versioning. Due to these changes, you may experience compilation errors when building that code using this (and future) versions. Notable changes include:
IGameInputDevice::GetDeviceInfo
previously returned the resultingIGameInputDeviceInfo
struct as the function's return value. This struct is now returned as an out parameter on the function, and the function's return value is now anHRESULT
.IGameInput::UnregisterCallback
previously took a timeout value as its second parameter, however this parameter has been removed. In these two cases, along with the touch API used for XCloud on console, use theGAMEINPUT_API_VERSION
define to conditionally compile (or exclude) code between PC and console.IGameInputReading::GetSequenceNumber
has been removed. Please useIGameInputReading::GetTimestamp
instead.
Example:
#include <GameInput.h>
#ifndef GAMEINPUT_API_VERSION
#define GAMEINPUT_API_VERSION 0
#endif
#if GAMEINPUT_API_VERSION == 1
using namespace GameInput::v1;
#endif
// ...
#if GAMEINPUT_API_VERSION >= 1
device->GetDeviceInfo(&deviceInfo);
#else
deviceInfo = device->GetDeviceInfo();
#endif