Unity New Input System是否支持5键以上的多按键鼠标?
Unity新版Input System多按键鼠标支持解答
首先明确新旧输入系统的原生鼠标支持差异:
- 旧版输入系统原生最高支持7键鼠标,对应枚举取值范围为
KeyCode.Mouse0至KeyCode.Mouse6。 - 目前已发布的新版Input System稳定版本,仅预置了5个标准鼠标按键的定义:
leftButton鼠标左键rightButton鼠标右键middleButton鼠标中键forwardButton鼠标前进侧键backButton鼠标后退侧键
针对多按键MMO游戏鼠标的全键支持问题,可参考当前适配方案与官方后续规划:
现有版本无需等待官方更新,即可实现全按键识别:
- 绝大多数市售多按键鼠标的额外侧键,会被操作系统默认映射为扩展键盘功能键或通用控制器按键,你只需要打开Input System的Input Action配置界面,开启按键监听功能后按下对应鼠标侧键,即可直接完成绑定,不需要编写额外的适配代码。
- 少数采用厂商私有通信协议的特殊按键,可通过接入对应鼠标厂商提供的官方开发SDK,将SDK抛出的按键信号转换为Input System可识别的自定义输入事件,即可正常响应所有鼠标按键。
关于官方原生支持的后续规划:根据Input System公开的开发路线图,开发团队确实在2.x大版本的需求列表中加入了扩展原生鼠标按键支持上限的内容,计划最高支持16个鼠标按键的原生识别,专门适配MMO游戏鼠标、专业设计类多按键鼠标的使用场景,但目前尚未公布该功能的正式版上线时间。如果项目近期有多按键鼠标的适配需求,直接使用上述现有方案即可,无需等待版本迭代。
内容的提问来源于stack exchange,提问作者Spirit_wolf
相关产品推荐
相关产品推荐

