19th
レトロゲームの復刻版をプレイすると操作感が違っている理由
昔やりこんだレトロゲームの復刻版をプレイすると、 プレイ感覚が違っていると感じることがあります。 昔ほどうまくプレイできないので、
「年を取ってウデが鈍ったのかな?」
と思うことがあります。 しかし実際には、その原因は遅延にある場合が多いです。 昔のゲームハードと現在のゲームハードで、 どのような違いが生じているのか比較してみます。
* 昔のゲームハード = 遅延が少ない
コントローラは電気回路で直結で、 入力値は即座にゲームプログラムに伝えられます。 ゲームプログラムが発行した描画リクエストは、 即座にスプライトレジスタに伝えられます。 スプライトはラスタ方式のため、 そのフレーム中に画面に反映されます。 モニタはブラウン管方式のため、 表示遅延はほぼゼロです。
* 現在のゲームハード = 遅延が大きい
コントローラ入力は、 OS 層が定期的に監視したものを API 越しで取得するスタイルです。 一般的な USB コントローラでは、 ここで 10 ミリ秒程度の遅延が発生します。 ゲームプログラムが発行した描画リクエストは、 フレームバッファの裏画面に描画されて、 次のフレームで実際に表示されます。 ここで約 1 フレームの遅延が発生します。 モニタは液晶方式のため、 遅延が少ないとされるモニタでも 1 フレームの遅延が発生しています。
モニタが 60 Hz だとした場合、 合計すると 43.3 ミリ秒の遅延となります。 プレイヤの最短応答時間 = 約 0.20 秒とした場合、21.7% の応答時間増大となります (実際にはこの他の要因の影響により、遅延はさらに増大します)。
というわけで、操作感覚が違うと感じた原因は老化ではありません。 よかったよかった。 じゃなくて、これは見過ごせない問題です。