2014-10-14 3 views
0

Я пытаюсь выяснить, доступен ли SetCooperativeLevel в DX11. Если он больше не поддерживается, какой новый API получит эксклюзивный вход с устройства ввода? Благодарю.Эквивалент SetCooperativeLevel в DX 11

ответ

1

Последней версией DirectInput был DirectInput8. С тех пор он не был значительно изменен. Использование DirectInput для работы с клавиатурой и мышью не рекомендуется, используйте вместо этого сообщения Win32. Для устаревших геймпадов и джойстиков вы можете продолжать использовать DirectInput для настольных приложений Win32, но он недоступен для Windows Store, телефона Windows или приложений Xbox One.

Для общих контроллеров Xbox 360 в Windows вы должны использовать XINPUT. См. GamePad в наборе инструментов DirectX для приятного помощника для его использования для игровых приставок.

PS: Для некоторых деталей о XInput 1.4 в Windows 8.0 и более поздних версиях по сравнению с XInput 1.3 в Windows 7 и все, см. Сообщение this.

Чтобы обработать «фокус ввода», вы должны отслеживать сообщение Win32 WM_ACTIVATEAPP. Если wParam имеет значение ИСТИНА, вы находитесь на переднем плане. Если wParam FALSE, вы теряете фокус.