ゲームの応答速度を計測する方法


Measuring Responsiveness in Video Games - Cowboy Programming

ゲームの入力と出力の間には遅延が存在する。コントローラーへの入力がデバイスで処理されて,その情報に基づいてゲーム内のステートが更新されて,その結果を反映したグラフィックのレンダリングコマンドが構築されて,そのコマンド列をグラフィックチップが処理して,結果として得られた画像が垂直同期のタイミングで出力されて……と。この一連の手続きを通常の方法で処理していくと,少なくとも3フレーム (50 msec) は遅延が発生することになる。

最近のフラットパネルディスプレイでは,さらにディスプレイ側でも様々な処理を行っているから,そのぶんの時間も含めて計 100 msec 程度の遅延が発生することになるかと思う。

でもこれは「少なくとも」の場合であって,実際には様々な都合から,もっと長い遅延が発生している場合もある。 Cowboy Programming の Mick West は,デジカメを使ってこの遅延時間を簡単に計測する方法について紹介している。

たしかに,秒間60フレームで動画を撮影する機能を持ったデジカメがあれば,こんなローテクな方法でも確実に計測することができるよね。

数年前,フラットパネルディスプレイの普及率が高まりはじめたころ,ディスプレイの機種によって遅延時間にかなりの差があることが話題になったことがあった。体感的なものでは比較のしようがなかったので,定量的に計測する方法がないものかと考えていたのだけれど……。こういうローテクな方法でも十分だということに早く気付くべきだったと,今更ながら後悔していたりする。