如何解决Steam Controller在Unity Editor中无法被识别的问题?
如何解决Steam Controller在Unity Editor中无法被识别的问题?
最近我在开发时碰到了Steam Controller的糟心事——它在Unity编辑器里完全不被当作输入设备识别,不管我怎么折腾,InputSystem.devices数组里都找不到它的影子。
我搜了好一阵资料,发现大家普遍说得通过Steam来启动Unity编辑器才行。于是我把Unity编辑器添加成了非Steam游戏,通过Steam客户端启动它,但问题还是没解决,控制器依旧不被识别。
虽然这个控制器已经有点过时了,但说不定还有其他开发者会碰到同样的问题,所以我想把我的解决办法分享出来:
- 先确认你的Steam Controller已经在Steam客户端里完成配对和基础设置,进入Steam的控制器配置界面,确保Steam本身能正常识别到你的控制器
- 把Unity编辑器添加到Steam库后,右键点击库中的Unity条目,选择「属性」,在「启动选项」里添加适配的启动参数(比如针对多数Unity版本的
-force-feature-level-direct11_1),确保Steam输入能正常注入到Unity进程中 - 打开Unity编辑器的「Input System Settings」,确认已经启用了Steam Input相关的支持选项(如果你的Input System版本包含该选项的话)
- 最后彻底关闭所有Unity进程和Steam客户端,重新打开Steam并确保控制器处于连接状态,再从Steam库中启动Unity编辑器,这时你应该就能在
InputSystem.devices数组里找到你的Steam Controller了
备注:内容来源于stack exchange,提问作者KamielDev




