采用Unity的控制器输入
采用Unity的控制器输入
可通过Unity开发工具为亚马逊Fire TV设备创建应用和游戏,方法与Android设备相同。
虽然未提供Fire TV开发所需的Unity插件,但Unity资产存储库的某些程序包,可支持游戏控制器。尤其是Gallant Games推出的InControl,这款程序包非常适合Fire TV应用的开发。InControl是Unity3D的跨平台输入管理器,用于标准化各种常见控制器的控制映射。
也可通过Unity输入管理器为游戏配置控制器输入。按照下表将亚马逊Fire TV遥控器和游戏控制器上的按钮与Unity输入管理器按钮和轴进行映射。
注意: 本文档中的输入参考值,适用于Unity 4.3.x及更高版本,不过,将来发布的Unity版本中,可能会有变更。
遥控器输入
在Unity中,使用这些值映射亚马逊Fire TV遥控器和语音遥控器上的按钮。关于Unity键码值的更多详细信息,请参阅键码。
一些遥控器具有一些额外的按钮,例如调高/调低音量、电源、Netflix、Amazon Prime和其他应用。但是,无法将这些按钮映射到第三方应用中的事件。
按钮 | Unity输入管理器值 | Unity键码值 |
---|---|---|
主页 | 无(系统事件) | 无(系统事件) |
后退 | 无(不支持) | KeyCode.Escape |
菜单 | 无(不支持) | KeyCode.Menu |
麦克风(搜索) | 无(系统事件) | 无(系统事件) |
选择(方向键中心) | 操纵杆按钮0 | KeyCode.JoystickButton0 |
向左(方向键) | 第五轴 | KeyCode.LeftArrow |
向右(方向键) | 第五轴 | KeyCode.RightArrow |
向上(方向键) | 第六轴 | KeyCode.UpArrow |
向下(方向键) | 第六轴 | KeyCode.DownArrow |
播放/暂停 | 无(不支持) | 无(不支持) |
倒回 | 无(不支持) | 无(不支持) |
快进 | 无(不支持) | 无(不支持) |
游戏控制器输入
在Unity中,用上述值映射Amazon Fire游戏控制器上的按钮。关于Unity键码值的更多详细信息,请参阅键码。
当前版本的Fire TV游戏控制器,有以下按钮:
旧版本的游戏控制器有以下按钮:
游戏控制器按钮 | Unity输入管理器值 | Unity键码值 |
---|---|---|
主页 | 无(系统事件) | 无(系统事件) |
后退 | 无(系统事件) | KeyCode.Escape |
菜单 | 无(系统事件) | KeyCode.Menu |
A | 操纵杆按钮0 | KeyCode.JoystickButton0 |
B | 操纵杆按钮1 | KeyCode.JoystickButton1 |
X | 操纵杆按钮2 | KeyCode.JoystickButton2 |
Y | 操纵杆按钮3 | KeyCode.JoystickButton3 |
向左(方向键) | 第五轴 | 无 |
向右(方向键) | 第五轴 | 无 |
向上(方向键) | 第六轴 | 无 |
向下(方向键) | 第六轴 | 无 |
左摇杆(向左/向右) | X轴第一轴 | 无 |
左摇杆(向上/向下) | Y轴第二轴 | 无 |
左摇杆按下 | 操纵杆按钮8 | KeyCode.JoystickButton8 |
右摇杆(向左/向右) | 第三轴 | 无 |
右摇杆(向上/向下) | 第四轴 | 无 |
右摇杆按下 | 操纵杆按钮9 | KeyCode.JoystickButton9 |
播放/暂停(仅限第一版) | 无(不支持) | 无(不支持) |
倒回(仅限第一版) | 无(不支持) | 无(不支持) |
快进(仅限第一版) | 无(不支持) | 无(不支持) |
左触发器(L2) | 第十三轴 | 无 |
左肩(L1) | 操纵杆按钮4 | KeyCode.LeftShift KeyCode.JoystickButton4 |
右触发器(R2) | 第十二轴 | 无 |
右肩(R1) | 操纵杆按钮5 | KeyCode.RightShift KeyCode.JoystickButton5 |
控制器名称
在Unity中可通过Input.GetJoystickNames()
方法获取控制器名称。对于各控制器,采用下列数值:
- 遥控器:
"Amazon Fire TV Remote"
- 语音遥控器:
"Amazon Fire TV Remote"
- 游戏控制器:
"Amazon Fire Game Controller"
Last updated: 2020年10月29日