
新手掣點解扮 Xbox 360?XInput 呢層舊標準幫你避開相容麻煩
拆解 XInput、DirectInput 同 Steam Input 各自做緊咩
新手掣,遊戲眼中仍然係 Xbox
買咗新款 8BitDo 或其他 PC 手掣,駁入 Windows 之後明明用得好地地,遊戲畫面卻繼續顯示 Xbox 360 嘅 A、B、X、Y,呢件事唔代表買錯貨,亦未必係 driver 認錯。好多手掣會用 XInput 相容模式,向遊戲交出一套固定嘅 Xbox 式按鍵資料。遊戲收到熟悉格式,自然照用 Xbox 圖示,至於手上實物係咩牌子,佢可能完全唔知。

圖片:8BitDo
XInput 贏在規矩夠少
DirectInput 年代嘅 PC 控制器可以好自由,手掣、軚盤、飛行搖桿同油門桿都放得入同一套框架,按鍵同軸數量亦可以各有各做法。彈性係大,但就要遊戲開發者同玩家自己執手尾:開發者未必知「按鍵 1」喺邊,玩家經常要逐粒掣設定。XInput 就收窄成一個大家認得嘅基本款:兩支搖桿、方向掣、ABXY、肩掣同兩邊獨立扳機,再加震動。硬件跟住呢套固定格式,遊戲就唔使逐款手掣另寫支援。
點解個名仲停留喺 Xbox 360
Microsoft 喺 Xbox 360 年代推廣 XInput,Windows 同 Xbox 開發可以沿用相近介面,遊戲廠同硬件廠亦逐步圍住呢套格式做相容。結果形成一個幾實際嘅循環:遊戲預設讀 XInput,手掣廠就提供 XInput 模式,玩家又開始預期插入即玩。8BitDo Ultimate 2C 官方韌體紀錄亦直接提到 XInput mode;不過各款 8BitDo 同第三方手掣支援嘅模式唔一樣,有啲仲會提供 DirectInput、Switch 或 Android 模式,唔可以一概而論。
Steam Input 再加一層翻譯
Steam Input 做法再進一步。Valve 文件講明,佢可以讀取 PlayStation、Switch、DirectInput 等手掣,再向只識傳統 PC 手掣介面嘅遊戲注入一個模擬 Xbox 控制器。咁就算舊遊戲從來冇寫 DualSense 支援,玩家仍有機會照玩。開發者如果接好 Steam Input API,遊戲仲可以查返實際輸入來源,顯示 PlayStation 交叉掣或 Switch 按鍵圖示;如果只係接收模擬 XInput,畫面繼續出 Xbox 圖示就好合理。
通用相容都有代價
XInput 其實係一個好成功嘅共同底線,但共同底線容納唔到每款新手掣嘅特色。背鍵、觸控板、陀螺儀或者多出嚟嘅功能鍵,進入 XInput 路徑後可能要映射成現有按鍵,甚至直接用唔到。Valve 亦提醒,如果遊戲原生手掣輸入同 Steam Input 模擬同時生效,一次撳掣有機會畀遊戲收兩次輸入。想保留正確圖示同完整功能,最好要有遊戲原生支援、Steam Input API,或者廠商自己提供嘅軟件同設定檔。
玩家應該點揀模式
玩一般 Windows 遊戲,尤其係年代較舊或者非 Steam 遊戲,XInput 通常係最省事嘅選擇。手掣有反應但圖示唔啱,可以先睇遊戲有冇按鍵圖示選項,再檢查 Steam Input 同手掣本身用緊咩模式;如果出現一次撳掣、遊戲收兩次輸入,就要留意 Steam Input、廠商映射軟件同遊戲原生支援有冇同時接管。Microsoft 亦有涵蓋更多裝置類型嘅 GameInput,但舊遊戲相容仍然重要。XInput 呢套 Xbox 360 年代規矩短期內仲會繼續留喺 PC 遊戲入面。
參考來源
- XDA Developers — Why your new gamepad pretends to be an Xbox 360 controller, and why that's actually brilliant — original report
- Microsoft Learn:Comparison of XInput and DirectInput features — 核對 XInput、DirectInput 嘅設計差異、震動支援同兩者並用時嘅處理方式。
- Microsoft Learn:Getting Started With XInput in Windows applications — 核對 XInput 手掣狀態、按鍵、搖桿同扳機資料結構。
- Steamworks:Steam Input Gamepad Emulation Best Practices — 核對 Steam Input 點樣模擬 Xbox 控制器、轉換輸入同提供正確按鍵圖示。
- 8BitDo:Ultimate 2C Wireless Controller — 核對產品嘅 Windows 連接方式、Xbox 式佈局同額外按鍵資料。
- 8BitDo Support — 官方韌體紀錄明確提到 Ultimate 2C 嘅 XInput mode,亦反映各款手掣模式支援並唔完全相同。
本文根據原文及公開資料整理;資料有出入時,以原文及官方資料為準。







