kimagre inrash

感想を書きます

入力遅延・インプットラグ検証データベース(inputlag database)

time 2021/06/01

検証環境・ツール

検証方法「シリアル通信」

Brook Universal Fighting Board (UFB) の入力を Arduino に流し、シリアル通信でPCに入力情報を送る方式。アイデアを参考にしたのは RetroSpy

キャプチャボードのラグを把握・考慮する必要がありますが、セットアップする機材が少なくて検証がしやすいのが利点。

キャプチャボードのラグは従来の「アナログコンポーネント切断方式」と同時に検証して並べて比較することで求めました。

検証動画

検証した動画はyoutubeに上げてあります。

左下にArduio経由で取得した入力情報を表示。

その後、ゲームに反映されるのを確認すると左上に結果が出ます。(キャプチャのラグがあるため、一定フレーム待つ処理を入れてあります)

この例だとキャプチャラグ(+)が3F、ゲームのインプットラグ(●)が3Fということになります。

※現在、ツールを作成しながら検証しているので抜けや誤検知があるかもしれません。

検証方式「アナログコンポーネント切断方式」

従来まで使用していた「アナログコンポーネント切断方式」については以下を参照ください。

検証結果

Lag(F) … インプットラグフレーム(入力遅延フレーム)。ゲームに反映されるのがこのフレーム分遅れます。(60fps換算)検証時に発生回数が一番多かったモノ(最頻値)を記載しています。注意点としてディスプレイやゲーム機自体のラグは含まれていない(含まないように測定している)ので、実際には下記数値にさらに数フレーム遅延します。

Stability(%) … 安定度。検証時のラグフレーム発生確率。数値が高いと安定している。ただし、現在のツールでは誤検知が多く、あまり信用できない値。

Trials … 検証回数。基本的には100回ですが、エラーや誤検知などで回数が減っている場合も。

Images … 検証したデータをグラフ化したもの。

検証環境 … 検証に使った方式。

ディレイフレームカウンタ

遅延を検知したフレームの回数をまとめたもの。上記例だと3F遅延が21回、4F遅延が31回となります。

データベース

検証した結果を随時更新します。

+2

前後記事

検証系まとめページ(frameratetest/inputlag/netcode など)

:)