運作方式
即時顯示手把向瀏覽器回報的所有資訊:每個按鍵的類比數值和按壓次數計數器、以進度條形式填滿的扳機、兩個搖桿的精確位置以及移動軌跡記錄。適用於 Xbox、PlayStation 和 Nintendo 手把,也適用於系統能辨識的任何 USB 或 Bluetooth 手把、方向盤和飛行搖桿。
用舊的手把最常見的兩種故障是飄移(drift)和按鍵失靈或彈跳:前者是放開搖桿後無法回到中心,後者是按鍵不再回應或連續觸發。搖桿靜止時,與中心的距離應接近零;圓度測試需要貼著邊緣轉動搖桿,它還會測量搖桿行程在各個方向上是否均勻到位。
範例
axes[0] = 0.0784 · axes[1] = -0.1137r = 0.138搖桿在沒有觸碰的情況下偏離中心這麼遠,就表示有飄移:在死區較小的遊戲中,視角或角色會自己移動。XINPUT_GAMEPAD_LEFT_THUMB_DEADZONE = 78497849 / 32767 ≈ 0.24這是 Microsoft 在 XInput 中為左搖桿建議的死區。小於該值的飄移,在使用死區的遊戲中感覺不到,但在為了提高精準度而縮小死區的遊戲中會被察覺。buttons[7].value = 0.42RT · R2 · ZR → 42 %Xbox 和 PlayStation 的扳機是類比的,會回報被按下的程度。Nintendo Pro Controller 的 ZL 和 ZR 是數位的,只會在 0 和 1 之間切換。使用情境
- 在申請保固、更換模組或購買二手手把之前,檢查搖桿是否飄移。
- 逐一驗證剛修好或剛清潔過的手把的按鍵,並透過計數器找出連按的情況。
- 在開啟遊戲之前,確認 Bluetooth 手把已正確配對並被系統辨識。
- 查看方向盤、街機搖桿或飛行搖桿回報的按鍵和軸編號,以便在模擬器中進行設定。
- 測試震動馬達是否正常運作。
常見問題
為什麼我的手把不會顯示?
基於隱私考量,在頁面開啟並位於前景的情況下按下按鍵之前,瀏覽器不會顯示任何手把。如果仍然不顯示,請檢查系統是否辨識到它:在 Windows 中,執行 joy.cpl 即可開啟遊戲裝置。Steam、DS4Windows 或 reWASD 等程式可能會隱藏原始手把,改為顯示一個虛擬手把。
如何判斷搖桿是否飄移?
放開搖桿,觀察 r 值,它代表與中心的距離。正常的搖桿只有百分之幾;如果在沒有觸碰的情況下超過 0.1,或者圓點自己移動,就表示有飄移。把搖桿推到邊緣再放開,重複幾次:如果每次回到的位置都不一樣,表示彈簧或電位器已經磨損。
圓度誤差衡量的是什麼?
貼著邊緣轉動搖桿時,工具會記錄在 36 個方向上各自到達的最遠點,並計算這些點平均偏離完美圓形的程度。數值較大,表示搖桿在某些方向上達不到最大值,或是超過了最大值。有些手把會刻意放大對角線方向,因此在下結論之前,最好比較同一型號的兩支手把。
對應為「非標準」是什麼意思?
瀏覽器了解最常見手把的配置,並以相同的按鍵順序提供它們,這樣才能繪製出手把圖示。當瀏覽器無法辨識某個型號時,會依裝置回報的順序提供按鍵和軸;它們仍然可以使用,只是沒有名稱。換一個瀏覽器或換一種連線方式(例如用 USB 取代 Bluetooth),同一支手把有時就能被辨識。
為什麼沒有顯示震動按鈕?
只有當瀏覽器為該手把提供震動功能時才會顯示。Chrome 和 Edge 為大多數 Xbox 和 PlayStation 手把提供震動;其他瀏覽器、某些 Bluetooth 連線以及許多通用手把,即使手把配有馬達,也不會開放震動功能。
可以測量手把的延遲或輪詢率嗎?
無法精確測量。瀏覽器不會在手把每次變化時通知頁面:頁面是每個螢幕影格查詢一次,所以每秒看到的變化次數永遠不會超過螢幕的更新率。要測量真實的輪詢率,需要直接讀取裝置的工具。