January 18, 2010
318 notes

レトロゲームの復刻版をプレイすると操作感が違っている理由
昔やりこんだレトロゲームの復刻版をプレイすると、 プレイ感覚が違っていると感じることがあります。 昔ほどうまくプレイできないので、
「年を取ってウデが鈍ったのかな?」
と思うことがあります。 しかし実際には、その原因は遅延にある場合が多いです。 昔のゲームハードと現在のゲームハードで、 どのような違いが生じているのか比較してみます。

* 昔のゲームハード = 遅延が少ない

コントローラは電気回路で直結で、 入力値は即座にゲームプログラムに伝えられます。 ゲームプログラムが発行した描画リクエストは、 即座にスプライトレジスタに伝えられます。 スプライトはラスタ方式のため、 そのフレーム中に画面に反映されます。 モニタはブラウン管方式のため、 表示遅延はほぼゼロです。

* 現在のゲームハード = 遅延が大きい

コントローラ入力は、 OS 層が定期的に監視したものを API 越しで取得するスタイルです。 一般的な USB コントローラでは、 ここで 10 ミリ秒程度の遅延が発生します。 ゲームプログラムが発行した描画リクエストは、 フレームバッファの裏画面に描画されて、 次のフレームで実際に表示されます。 ここで約 1 フレームの遅延が発生します。 モニタは液晶方式のため、 遅延が少ないとされるモニタでも 1 フレームの遅延が発生しています。

モニタが 60 Hz だとした場合、 合計すると 43.3 ミリ秒の遅延となります。 プレイヤの最短応答時間 = 約 0.20 秒とした場合、21.7% の応答時間増大となります (実際にはこの他の要因の影響により、遅延はさらに増大します)。

というわけで、操作感覚が違うと感じた原因は老化ではありません。 よかったよかった。 じゃなくて、これは見過ごせない問題です。

  1. chlono reblogged this from luine
  2. kiyopichi reblogged this from fumi-tano
  3. drmiyabi reblogged this from sai10t
  4. sai10t reblogged this from gkojay
  5. 19190721 reblogged this from gkojay
  6. tanekichi reblogged this from gkojay
  7. hyperforest reblogged this from gkojay
  8. dogazine reblogged this from gkojay
  9. haginge reblogged this from gkojay
  10. vreco003 reblogged this from fumi-tano
  11. noito reblogged this from gkojay
  12. luine reblogged this from gkojay
  13. c610 reblogged this from gkojay
  14. raikoudengeki reblogged this from gkojay
  15. fumi-tano reblogged this from gkojay
  16. tataratechinfofeed reblogged this from gkojay
  17. tataraentamestream reblogged this from gkojay
  18. papertips reblogged this from gkojay
  19. gkojay reblogged this from mcsgsym
  20. sfmm reblogged this from exposition
  21. vfx227 reblogged this from lj7stkok
  22. leonyan reblogged this from luft2501
  23. lj7stkok reblogged this from gza20090909
  24. nyasuug reblogged this from exposition
  25. exposition reblogged this from pipco
  26. gza20090909 reblogged this from pipco
  27. es-s-etc reblogged this from puruhime
  28. jamjamjam3 reblogged this from pipco
  29. yokumoku reblogged this from pipco
  30. tooooo reblogged this from puruhime
  31. pipco reblogged this from jun26
  32. jun26 reblogged this from puruhime
  33. puruhime reblogged this from hepton-rk
  34. ke1t reblogged this from gkojay
  35. allgreendays reblogged this from fujihajime
  36. tetsuya7000 reblogged this from sg-1000
  37. lazyjam9 reblogged this from gkojay
  38. akilt reblogged this from gkojay
  39. onykue reblogged this from gkojay
  40. sg-1000 reblogged this from hepton-rk
  41. fujihajime reblogged this from hepton-rk
  42. teecis811 reblogged this from gkojay
  43. impepc reblogged this from gkojay
  44. hepton-rk reblogged this from gkojay