GDK icon indicating copy to clipboard operation
GDK copied to clipboard

[System] GameInput on PC isn’t yet available.

Open FLY1NGSQU1RR3L opened this issue 2 years ago • 11 comments

The following APIs aren’t yet implemented in GameInput. They'll be available in a future update.

  • IGameInput::GetTemporalReading
  • IGameInput::RegisterReadingCallback
  • IGameInput::CreateAggregateDevice
  • IGameInputDevice::GetBatteryState
  • IGameInputDevice::PowerOff

FLY1NGSQU1RR3L avatar Nov 13 '21 02:11 FLY1NGSQU1RR3L

Current plan of record: June 2022 GDK will begin to release part or all of the interfaces required to support GameInput on PC w/ the GDK.

FLY1NGSQU1RR3L avatar Mar 16 '22 22:03 FLY1NGSQU1RR3L

Hi @FLY1NGSQU1RR3L!

Can you please clarify - whole GameInput is not available or just the listed methods?

DJm00n avatar Apr 13 '22 16:04 DJm00n

@DJm00n whole GameInput is not available in public GDK yet.

Devaniti avatar Apr 13 '22 21:04 Devaniti

I am available to implement this part of the code. I will work on right away and continue until it is completed, fully tested, and standby to make improvements as needed.

r2d2Proton avatar Jun 15 '22 21:06 r2d2Proton

Looks like GameInput is now included in recent Microsoft.GDK.PC.220600 10.0.22000.4362 package:

native\220600\GRDK\gamekit\Include\GameInput.h native\220600\GRDK\gamekit\lib\amd64\GameInput.lib

More info here: https://github.com/microsoft/GDK/releases/tag/June_2022

DJm00n avatar Jul 07 '22 10:07 DJm00n

I did run into a few of them myself. The raw stuff too - GetRawDeviceFeature, etc. More importantly though my USB Xbox controllers are not working. They do work in XInput and I would have expected the same in the latest GameInput API. Keyboard and mouse do work, USB Xbox 360 controller - no. That is bad code. Bade Code Review. Bad testing. Can you point me to a sample in the Windows-Driver-Sample that I can start from to create my own version of the interface?

r2d2Proton avatar Dec 17 '22 15:12 r2d2Proton

What's the licensing for GameInput? Can anyone write an application using it? Or do we have to wait until it's part of the windows SDK?

spencerparkin avatar Nov 09 '23 01:11 spencerparkin

@spencerparkin https://github.com/microsoft/GDK/blob/Main/LICENSE-EN-US.MD

DJm00n avatar Nov 09 '23 06:11 DJm00n

@DJm00n SIGH..................I'll have my lawyer read all that and make sense of it for me. Thanks.

spencerparkin avatar Nov 09 '23 07:11 spencerparkin

Taking a quick look at the licensing there it seems this is not usable by an open source game engine. Can you please clarify if an open source project in general can legally safely use the public GDK as available on NuGet?

Furthermore I tried using the public GDK from NuGet (the one supposed to contain GameInput.h) but it is broken. I find GameInput.h in the packages directory but VisualStudio refuses to find the file when using "GameInput.h". Can you fix the NuGet package to properly adjust additional include path as other packages do (like the WinRT ones)?

LordOfDragons avatar Nov 10 '23 11:11 LordOfDragons

The first package was a preview, so you should find the 2024 releases are functional.

walbourn avatar Apr 18 '24 21:04 walbourn