我正在尝试查看我的 Xbox One 控制器发送给我的 MacBook 的输入流以创建一些自定义快捷方式,但我在网上找不到任何明确的说明,或者这些说明对我来说技术性太强。我愿意学习,但我不知道具体要学习什么,或者我需要什么资源。我熟悉c/c++、js和一些shell,并且我有Xcode和atom。非常感谢,对格式表示抱歉。该移动应用程序对格式不是超级友好。
你想使用GCController/GCXBoxGamepad
示例代码:
// objective-c:
#import <GameController/GCController.h>
#import <GameController/GCExtendedGamepad.h>
#import <GameController/GCXboxGamepad.h>
#import <GameController/GCControllerButtonInput.h>
#import <GameController/GCControllerDirectionPad.h>
#import <GameController/GCControllerAxisInput.h>
// put in a function somewhere.
// GCController is a very convenient global you get by
// including GCController.h
int n = (int)GCController.controllers.count;
if( n ) {
GCController *controller = GCController.controllers[ 0 ];
if( [controller.extendedGamepad isKindOfClass:[GCXboxGamepad class]] ) {
//info( "It's an xbox controller" );
GCXboxGamepad *xboxController = (GCXboxGamepad*)controller.extendedGamepad;
if( xboxController.buttonA.pressed ) {
info( "you pushed A!" );
}
if( xboxController.buttonB.pressed ) {
info( "you pushed B!" );
}
if( float x = xboxController.leftThumbstick.xAxis.value ) {
info( "xAxis %f", x );
}
}
}