ポーリングレート


「ポーリングレート」は、PCに接続している機器の入力情報を通信する頻度を表す数値である。

概要

この界隈に関する用語と言うよりは自作PC界隈やFPS界隈で目にすることが多い用語。レポートレートとも言う。
PCに接続している機器(マウス・キーボード・コントローラなど)が操作された情報を、PC本体に送る頻度を表す数値。
1秒間に何回送るかで数値化され、単位は「Hz」や「Reports/sec」で表す。
送る間隔はポーリング間隔(レポート間隔)で、こちらの単位は「ms」になる。

頻繁に入力検知を行うのはPCに負荷をかけるので、通常は高頻度である必要はない。
そのため通常の機器は125Hz(=8msに1回)の頻度で通信する機器が多い。
ゲーミングマウスやゲーミングキーボードでは1000Hz(1秒に1000回、1msに1回)に対応しているものもある。

また、古いUSBの規格を使っていると転送速度の問題でポーリングレートに上限がかかるため、PC側でどんな設定をしようと1000Hzは実現できない。
そんな時は、REVIVE USBのような基板を使うことで無理やりUSBの規格を変えてしまうことで(ゴリ押しのような形で)1000Hzを実現できる。


界隈的な話

StepManiaでSimplyLoveを使っている場合、リザルト画面で入力誤差のヒストグラムを確認できる。
この際、プレーした曲のBPMが125の倍数かつ、ポーリングレートが125Hzの場合、ヒストグラムが極端に波打つような形になる。

ポーリングレートは言ってみればゲームのフレームルールみたいなもので、
ボタンが押されても次の通信まではボタンが押された情報は受信しないので、前回の通信の直後にボタンが押されると次の通信までのタイムラグが生まれてしまう。
992、1000、1008……msのタイミングで通信が行われている場合。1001msのタイミングでボタンを押すと次の通信は1008msなので、実際にボタンを押したタイミングとPCが検知するタイミングには7msの誤差が生まれる。
海外勢はこの誤差を大きな問題と考えており、ポーリングレートを上げるためにL-TEK PADを改造している人も居る。

もっとも、日本のゲームセンターでは、2019年末にようやくIIDXでライトニングモデルで120Hzで駆動した程度なので、それと同等でよければ気にするほどではない。
(ただし、BMSやINFINITAS勢では1000Hzにこだわる人も居る。結局気にするかどうかは人による)
DDRのパネルのポーリングレートは不明。



弊害

ポーリングレートが高くなるとチャタリング(1回しかボタンを押していないのに複数回ボタンを押したようになる現象)が発生することがある。
これは単純な話で、チャタリングが起きてしまっている時間がレポート間隔より長いと複数回の判定になりやすいからである。

対策としては
  • 基板側で瞬間的なOFF状態を無効にする(コンデンサを搭載するなど)
  • コントローラ側のプログラムを変更する(瞬間的なON状態を無効にするまたは瞬間的なOFF状態を無効にするようにファームウェアやスケッチを変える)
  • ゲーム側にチャタリング対策設定があればそれを使用する(明記されていないがON固定のゲームもある)
というものがある。


最終更新:(2022/08/24)
最終更新:2022年08月24日 11:39