見出し画像

ゲーミングマウスの高DPIは遅延を減少させる。はぁ?何言ってんだお前。

この記事は思想強めのアンチテーゼであり、ゲーミングマウスの4KHz以上は過剰だと思う私のただの思想記事です(ほーん、こんなこともあるんやな。くらいで見てください)

RTINGS・techpowerup・reddit引用

DPI (CPI/センサー解像度) と入力遅延

昨今、高いDPIが入力遅延を減少させると主張されています。
これは、マウスが完全に静止した状態から最初の動きを検知するまでの遅延のみを測定するテストに基づいています。

しかし、この「最初の動きまでの遅延」は、実際のセンサー遅延やゲームプレイにおける実際の遅延を反映していません
マウスが高解像度(高DPI)であればあるほど、わずかな動きも早く検知するため、最初の動きまでの遅延は短くなりますが、これは「時計が正しい時間に鳴るまでの歩数」のようなものであり、最終的な目標(例えば、敵の頭にエイムを合わせる)に到達するまでの時間はDPIによって変わりません

真の意味でのセンサー遅延は、動きの開始、動きの途中、動きの終了といった複数のポイントで測定する必要があります。RTINGSなどの詳細なテストによると、DPIの値は動きの途中や終了時の遅延にはほとんど影響しません。
ほとんどの現代のセンサーは、予算モデルであっても低いセンサー遅延を搭載しています。何度も繰り返しますが、DPIは遅延に影響しません。
プロゲーマーがしばし、400-800のような低いDPIを使用するのは、それに慣れているだけでなく、低いDPIの方が精密なフリックやポジショニングがしやすいからです。高いDPIは、ユーザーの細かな手の震えなども検知してしまうため、ゲームによってはマイナスに働くことがあります。

高いDPIは、高解像度モニターを使用している場合や、ゲーム内で非常に高い感度を設定している場合に、カーソルが画面上をより速く移動するために役立ちますが、遅延を減らす効果はありません

Polling Rate (ポーリングレート/レポートレート/周波数) と入力遅延/パフォーマンス

  • ポーリングレートは、マウスが1秒間にコンピューターにデータを送信する頻度です。最近では4000Hzや8000Hzといった高いポーリングレートのマウスが人気になっています。

  • 高いポーリングレートは、データをより頻繁に送信するため、理論的には入力遅延を減少させます。1000Hzで約1msの遅延、125Hzで約8msの遅延があり、体感できる可能性がありますが、1000Hz以上での遅延の減少は1ms未満であり、人間が体感するのは非常に難しいと言われてます(実際は1ms以下でも人間は慣れると違和感や不快感を感じるようになります)

ポーリングレートの真価は、プレイするゲームがどのようにマウス入力を処理するかに依存する。

  • フレームレートに依存する入力システムを持つゲーム(CS2)では、ゲームはマウスデータをゲームのフレームレート(FPS)と同じ頻度でしか処理しません。マウスのポーリングレートが4000Hzや8000Hzであっても、ゲームが100FPSであれば、ゲームは1秒間に100回しかマウスデータを処理しません。

  • CS2のようなゲームでは、FPSが事実上のポーリングレートに。マウスのポーリングレートを上げるよりも、PCのスペックを上げてFPSを高めることの方が、動きの登録頻度と応答性を向上させる上で圧倒的に重要です。

  • フレームレートに依存しない入力システムを持つゲーム(例: Overwatch, Valorant - Overwatchには"High precision Mouse Input"という設定があります)では、ゲームはマウスのポーリングレートに従ってデータを処理します。FPSが低くてもマウスのポーリングレートが高ければ、動きはより頻繁かつ正確に登録されます。このようなゲームでは、高いポーリングレートの恩恵をまだ体感できます。

  • しかし高いポーリングレート(特に4000Hz、8000Hz)は、CPUへの負荷を増加させ、システムのパフォーマンス(特にFPS)に影響を与える可能性がある。これは、フレームレート依存のゲームで高いポーリングレートを使用した場合、FPSが低下してしまい、結果的に入力の応答性が悪化する可能性があるため、逆効果になることもあります。

  • 高いポーリングレートはワイヤレスマウスのバッテリーを非常に早く消耗させる。バッテリーの寿命は充放電サイクル数に左右されるため、頻繁な充電はバッテリーの劣化を早めます。

DPIとPolling Rateの関係性(神話の否定)

  • 「高いポーリングレート(Hz)の潜在能力を引き出すには、高いDPIが必要だ」という説も誤りです。

  • ポーリングレートは固定値であり、DPIによって変化することはありません。

  • 特定のウェブサイトやツールで、マウスを動かす速さやDPIによってポーリングレート表示が変わるものがありますが、これはマウスが送信しているデータの受信頻度を示しているだけであり、マウスの実際のポーリングレート設定が変化しているわけではありません。

  • 高いDPIや低いゲーム内感度でこれらのツール上の「受信頻度」を高めようとすることは、同じ物理的な動きに対してより多くのデータポイントを送信するだけであり、ポーリングレートの有効活用とは無関係で、単にPCに余計な負荷をかけるだけです。

CS2のマウス入力の問題

  • CS2は、マウス入力の処理に特有の問題を抱えています。

  • CS:GOではマウスの動きは次のフレームで登録されていましたが、CS2では前のフレームの位置に基づいて登録される。プレイフィールがCS:GOよりも悪く、マウスの動きが遅れてゲームが追いついてくるような感覚になり、特に移動しながらの精密な射撃が難しく感じる。

  • CS2で応答性を向上させる唯一の方法は、ゲームの入力がフレームレートに依存するため、最大限にFPSを高く、かつ安定させることです。開発者がOverwatchのようなフレームレートに依存しない入力システムを実装することが望ましいですが・・・

Debounce Time (デバウンスタイム)
これは、メカニカルスイッチの経年劣化によるダブルクリックを防ぐための機能です。

デバウンスタイムの実装には主に2つのタイプがあります: deferとeager。最小クリック時間 と最小クリック間隔 は、ファームウェア マウス デバウンスの 2 つの主要な概念。
MCDは、クリックが持続する必要のある最小時間を決定し、MTBCはクリック後、新しいスイッチ信号が入力に登録されない時間のスパンです。これらを合わせると、一般的に「デバウンス時間」と呼ばれるものになります。

ディファータイプ:この形式のデバウンスは、スイッチから信号を受信すると、MCD(Minimum Click Duration)よりも長いかどうかを確認するのを待ってから、入力として受け入れます。MCDより短いクリックは破棄されます。このように、スイッチの接点が最初に閉じたときに発生する複数の短い「バウンス」は無視され、スイッチが「落ち着いた」場合にのみ、マウスはそれを適切なクリックとして受け入れます。

デバウンス遅延の主な利点は、ダブルクリックやスラムクリック(通常は短すぎてMCDに到達できない)などのノイズをフィルタリングするのに本質的に効果的であることです。ただし、2つの大きな欠点があります。まず、アルゴリズムはクリックが十分に長いかどうかを確認するのを待つ必要があるため、遅延タイプのデバウンスはクリックの遅延を直接導入します。MCD の長さが 8 ミリ秒の場合、クリック遅延は 8 ミリ秒増加します。次に、MCD の設定が高すぎると、短いクリックが破棄され、入力が見逃される可能性があります。

↑簡単にまとめると、利点としてダブルクリックなどのノイズをフィルタリングするのに効果的。欠点としてクリックレイテンシ(遅延)が直接増加する(MCDが8msの場合、8msの遅延が追加される)また、MCDが高すぎると、短いクリックが破棄され、入力ミスにつながる可能性がある。

イーガータイプ:この形式のデバウンス動作は、スイッチからの最初の信号が MCD よりも短い場合でも入力として受け入れる。いわゆるデバウンス動作です。後続の接点バウンスからの入力が繰り返されるのを防ぐために、最初の信号はすぐに設定されたMCD長に拡張され、残りの信号を効果的にマスクします。

Eagerデバウンスの利点は、追加のクリックレイテンシーが発生しないこと。最初に受信した信号が送信されるものです。欠点は、追加の介入(多くの場合、小さな延期期間の形)がないと、アルゴリズムはスラムクリックのようなシグナルノイズが発生しやすいことです。MCDの設定が高すぎると、クリック音も「固執」し、タップファイアなどのタスクが難しくなります。

利点としてクリックレイテンシが追加されない=受信した最初の信号が送信される。
欠点として追加の介入がない場合(通常は短いdefer期間の形)、スラムクリックなどの信号ノイズの影響を受けやすい。MCDが高すぎると、クリックが「張り付く」ことがあり、タップファイアのような撃ち方が難しくなる。

DEFERタイプ: スイッチから「HIGH」信号がないLOW状態が設定された時間(MLSD)に達するまで待機します。これにより、接触が離れる際のノイズがフィルタリングされますが、マウスが「LOW」イベントが十分に長くなるのを待つため、MCDが延長される結果となります。
EAGERタイプ: スイッチからの最初の「LOW」信号を受け取り、それをMTBC値まで延長します。これはMCDを延長する結果にはなりませんが、マウスダウンのeagerタイプと同様に、ノイズ耐性がありません。スイッチ設計にヒステリシスがある場合(2ピンタクトスイッチに一般的)、eagerデバウンスは意図しないリリースやダブルクリックを引き起こす可能性があります。

deferタイプ
ユーザーがクリックした際、設定されたデバウンスタイムが経過し、その間にチャタリング(意図しない追加のクリック)がなかった場合に、クリック信号がPCに送信されます。デバウンスタイムが高いと、この時間がクリックの遅延として追加されます。多くの中国メーカーなどの小規模ブランドのマウスに採用されていることが多いです。このタイプの場合、ダブルクリックが発生しない範囲で可能な限り低い値に設定することが推奨

eagerタイプ
ユーザーがクリックした最初の瞬間に、クリック信号が直ちにPCに送信されます。デバウンスタイムは、クリックが送信された後でカウントが開始され、その間に発生するチャタリングを無視します。このタイプはクリックの遅延に影響を与えないため、設定値を高くしても応答性には影響しません。RazerやLogitechのような大手メーカーのマウスに採用されていることが多いです。これらのメーカーのマウスでは、設定変更ができない場合もありますが、それはデバウンスタイムが遅延に影響しないためです
自分のマウスがどちらのタイプを使用しているかを知るには、詳細なマウスレビューサイトでテスト結果を確認する必要があります。

組み合わせ - SymmetricalとAsymmetrical

マウスは必ずしもdeferまたはeagerのいずれか一方だけを使用する必要はなく、マウスメーカーはマウスダウンとマウスアップの両方に対して、それぞれ独立してどちらを使用するか(およびどのようなMCD/MTBC値にするか)を選択します。これにより、4つの異なる組み合わせが可能になります。

Sym_defer: マウスダウンとマウスアップの両方でDeferデバウンスを使用します。機械式スイッチを搭載したほとんどのマウスで最も一般的な実装です(Logitechは主要な例外です)Sym_deferはMCDとMTBCが等しくなり、MPCDがMCDと等しくなります。

Sym_eager: マウスダウンにeagerデバウンスを使用するマウスで最も一般的な実装です。純粋なsym_eagerでは、MPCDは1つのポーリングイベントと同じくらい短くなる可能性があります。MCDは通常MTBCと等しくなりますが、そうである必要はありません。光学式スイッチを搭載したマウスは、通常sym_eagerアルゴリズムを使用します。

Asym_defer_eager: マウスダウンにDefer、マウスアップにEagerデバウンスを使用します。これは最もまれな形式のデバウンスで、eagerなマウスアップとdeferredなマウスダウンの組み合わせにより、MTBCがMCDの少なくとも2倍の長さになります。ダブルクリックなしで極めて短い持続時間のクリックが必要な場合に有用ですが、その代わりに次の入力に素早く追従できないという欠点があります。

Asym_eager_defer: もう一つのまれな形式のデバウンスです。eagerなマウスダウンとdeferredなマウスアップにより、比較的長いMCDで極めて短いMTBC(基本的にポーリング間隔時間)が可能になります。高いノイズやチャタリングがあるキーボードにも有効で、ダブルクリックに非常に強いです。このアルゴリズムでデバウンス時間を調整すると、MCDの持続時間をかなりうまく制御でき、QMK実装では結果が一貫しています。

以上の用語は、QMKのDebounce APIによって推奨される規約に基づいています。

ファームウェアデバウンスに関するその他の情報

最大CPS (Clicks Per Second)
最大CPSはデバウンスタイミングに依存します。MCDとMTBCが分かれば、それらを合計し、1000msをその合計で割ることで最大CPSを計算できます。

最小デバウンス値
デバウンス時間はポーリングレートの影響を受けます。デバウンスなしでも、最低のMCD/MTBC値は1/1ms(1000hz時)になります。
ポーリングがクリックがHIGH状態かLOW状態かを定義するため。ポーリングされると、信号は次のポーリングが1ms後にヒットするまでHIGHにロックされ、その後次のポーリングまでLOWにロックされます。
ポーリングレートが低いほどこれらのタイミングは長くなり、例えば125hzではMCD/MTBCは8/8となり、最大CPSは62.5に。

デバウンス時間の変更
マウスによっては、ソフトウェアでデバウンス時間を増加させるプログラムが存在します。
主に、故障したスイッチからのダブルクリックをフィルタリングするために使用される。
asym_eagerメソッドのように、MTBCを延長して追加のクリックをマスクする機能があります。
デバウンス時間を減少させることは、メーカーがオプションを提供していない限り可能ではない。
ソフトウェアでデバウンス時間を設定できるマウスの場合、経験則として、ダブルクリックが発生しない最低の設定値を使用するのが良いでしょう。

Windowsのマウス加速とRaw Input

  • Windowsの設定にある「ポインターの精度を高める」(いわゆるマウス加速)は、マウスの移動速度によってカーソルの移動距離を変える機能。

  • Raw Input(ダイレクト入力)機能を持つゲーム(現代のFPSゲーム(Apex Legends, Battlefield, Call of Duty, CS2, CS:GO, Valorant, The など)では、マウスのデータがオペレーティングシステムを介さずにゲームに直接送信されます。
    したがって、Windowsのマウス加速設定はこれらのゲーム内では完全に無効。
    設定をオンにしてもオフにしても、ゲーム内での挙動は変わりません。もし違いを感じるなら、それはプラシーボ効果(はなほじ)

  • Raw Inputをサポートしていない古いゲーム(DayZなど)では、Windowsのマウス加速がゲーム内の挙動に影響します。
    同じ距離をマウスで動かしても、速度によってカーソルの移動距離が変わってしまうため、正確で一貫したエイムができなくなります。このようなゲームでは、Windowsのマウス加速は必ずオフにするべきでし。

  • RawAccelのようなサードパーティ製ツールを使用すると、カスタマイズされた加速カーブを設定し、実験的に加速を利用することも可能ですが、Windows標準の加速はオンかオフかのどちらかです。

マウスのソフトウェア

  • 多くのゲーミングマウスに付属するソフトウェアは、バックグラウンドで常駐することが多く、システムリソースを消費したり、不安定性の原因になったりする可能性があります。

  • 高機能なマウスの多くはオンボードメモリを備えています。推奨される使い方は以下↓

    1. ソフトウェアをインストールする。

    2. DPI、ポーリングレート、マクロ、ライティングなどの設定を調整し、マウスのオンボードメモリに保存する

    3. ソフトウェアをアンインストールするか、バックグラウンドでの起動を無効にする

  • LogitechのGHUBは重いソフトウェアですが、オンボードメモリ対応マウス向けに、GHUBなしでメモリ設定を管理できる「Onboard Memory Manager」というポータブルツールを提供しています。

  • Razer Synapseなど、一部のソフトウェアは高ポーリングレートなど特定の機能を利用するために常駐が必要な場合があります。うんちソフトです?

  • SteelSeries GGも非常に多機能ですが、不要な機能が多くリソースを消費する「ゴミソフト」です。Corsair iCueも同様に重い。

マウスの形状、重さ、快適性 vs. 技術仕様で決める

  • マウスを選ぶ上で最も重要な要素は、マウスの形状と重さ、そして自分の手に合って快適に使えるかどうかです。

  • 高機能な技術仕様(例: 8000Hzポーリングレート)を追求するよりも、自分が快適に操作できるマウスを見つけることの方が、ゲームプレイにおいてずっと重要。

  • 重いマウスが好きなら重いマウス、軽いマウスが好きなら軽いマウスを選ぶべきであり、個人の好みの問題になる。

筋トレ(マッスルメモリー)メモリと感度

  • 「特定の感度やマウスに慣れたら筋トレメモリが働く」という考えは、多くの場合誤解です。実際には脳が適応していく。(ない事はないが)

  • 感度やマウスを変更しても、数日〜1週間程度で新しい設定に慣れることができます。

  • ゲームによって最適な感度は異なる。
    例えば、CSやValorantのような精密なフリックやポジショニングが重要なゲームでは低い感度、Apex LegendsやBattlefieldのように垂直方向の動きが多く素早い振り向きが必要なゲームでは高い感度が有利になることがあります。

  • 「マッスルメモリーを維持するために全てのゲームで同じ感度を使う」ということは、むしろゲームごとに異なる操作感が必要な場面では非効率的かと。
    ゲームごとに快適な感度を設定することが推奨されています。

  • DPI Deviationという現象により、ソフトウェア上で同じDPI値に設定しても、センサーモデルやマウス本体、さらにはマウス底の厚みによってセンサーとマウスパッド間の距離が変わり、実際のDPI値が異なることがあります。これにより、別のマウスに同じDPIとゲーム内感度設定をコピーしても、全く同じ操作感にはならない可能性がある。

投資の優先順位

  • CS2のようなフレームレートに依存する入力システムのゲームを主にプレイする場合、高価なゲーミングマウス(特に超高ポーリングレート機能など、ゲームが十分に活用しない可能性のある機能を持つもの)に投資するよりも、PCのスペックアップ(CPU/GPUの強化によるFPS向上)に投資する方が、ゲームの応答性を向上させる上で効果的です。

  • OverwatchやValorantのようなフレームレートに依存しない入力システムのゲームを主にプレイする場合、高いポーリングレートを持つマウスは、将来性も含めて有用な投資となる可能性があります。

  • マウスに関しては、まず形状と快適性を最優先し、その上で予算に余裕があれば高機能なものを検討するのが良いでしょう。

マウスに関する多くの技術的な議論は、実際のゲームプレイにおいて過剰に評価されているか、あるいは特定の条件下でしか意味がないと思います。最も重要なのは、快適に使えるマウスを選び、ゲーム内の設定(特にフレームレート依存のゲームではPCの性能向上)に注力し、余計な情報に囚われすぎず、ゲームをプレイして上達すること(はなほじー)


いいなと思ったら応援しよう!