ファミコンロッキーとは、
あさいもとゆき氏による漫画作品で、
1985年から1987年にかけて「月刊コロコロコミック」および「小学5年生」で、連載されていました。
現在も連載してるかどうか知らんけどアクションロッキーという続編もあるようです。
この漫画を語る上で欠かせないのが、
「ゲームの裏技」
「虚偽の裏技」
そして
「カオスな必殺技」
でしょう。
今回は、この必殺技の代表ともいえる
「ゲーム拳必殺50連打」について、切り詰めていきたいと思います。
「ゲーム拳必殺50連打」の50連打の定義は、
1秒間に50連射する事、です。
これ、実際に可能なのかってことですよね。
高橋名人でも
16連射です。
人体の構造上まず
不可能なんじゃね?ってのは置いといて、
私たちはプログラマ志望ですし、プログラム上で考えてみます。
まず、ボタンを押すというのはどういうことなのか、
ボタンが、
放れている
False
押されている
True
の2パターンで判別できるでしょう。
(ハード的な構造は割愛します、てか調べたくねー)
私含め、
放されている
FREE
放された瞬間
PULL
押された瞬間
PUSH
押されている
HOLD
のように、4パターンで判別している方も多いでしょう。
この変化サイクルは、
実際にはコントローラやキーボードを制御するAPIなどで細かい単位で行われていますが、
プログラム側では、
1ループに1回の割合で発生します。
というのも、そのAPIを呼び出し判別しているのが1ループに1回になるため、
どうあがいてもこうなります。
つまり
1秒間の変化サイクルは、フレームレートと等しくなるということですね。
ファミコンロッキーの時代…つまり
ファミコン全盛期ですが、
最大で60FPSは出てたそうなので
秒間60回判定できるから、最大60連打できるじゃん!
そんなことはありませんっ!☆バチコーン
連打、ということは、一度は放してるわけです。
放していることを判定するために
1フレーム消費してしまいす。
先ほど示した4パターンであらわすならば、
PUSH→PULL→PUSH
となり、始めて最速の連射が発生するわけです。
つまり、
最大連射数 = フレームレート / 2
という公式が成り立ちますね。
つまり、
60FPSだと30連射までしか判定できません。
逆に、物理的に30連射を超えると、
連続したフレームで連射された部分が、
長押しとして判定されます。
例えば、31連射された場合、
実際は、
PUSH→PUSH→PULL
であっても
PUSH→HOLD→PULL
として判定され、2フレーム無駄になるため
最大29連射になってしまいます。
「ゲーム拳必殺50連打」の場合、
最大10連射となります。
連射しすぎると、
連射回数が減っちゃうわけです。
逆にいえば、50連射が可能な
ロッキーのファミコンは100FPS以上出ています。
さらに言うと、別の必殺技、
「超速衝撃連打(スーパーインパルスアタック)」は、
衝撃波を発生させることで
秒間数百回以上連射できるそうです。
数百っていうのが200か300かわからないけど、
つまり400とか600とかFPSが出ているわけで…
すげーな…。
マルチスレッドで、キーを判別する方法もありますが、
1ループにおける呼び出しサイクルを考えると、
絶対に
PULLと
PUSHは1ループ保持させる必要があるので、
計算式は変わりません。
ていうか、こう考えれば、なぜ
高橋名人の限界が16連射だったのかわかってきませんか…?
ファミコンロッキーは、
十字キーを乱れ打ちしてゲーム内で
竜巻を発生させたり、
そもそもプログラミングされてる
もしくは、
ファミコン時代に
無駄に物理エンジン積んでるか、
みたいなてんやわんやな世界なんで
1000FPSだろうが2000FPSだろうが
余裕なんだと思います。
明らかなフレームレートの無駄遣いです。
しかし、そんな限界を超えた世界を作り出せるプログラマーになってみたいですね。
努力を惜しまなければ人間に限界は訪れません。
むしろ、最後まであきらめなかった人にこそ勝利はもたらされます。
もしかしたら、生きているうちに、ファミコンロッキーの世界が実現するかもしれませんね!
2000FPSなんて絶対しないけどね☆
そ~れ~で~は~(*´∀`)ノ
PR
COMMENT
No Title
No Title
あとこの記事とは関係なくて申し訳ないけど、
このブログのトップページの記事が邪魔に感じる。
更新されているか確認するため、パッと開いた時に、少し下にスクロールしないと最新記事が見れないのは煩わしさを感じる。
RSS登録すれば済む話だけど・・・何とかなりませんかね?
例えばその募集記事を左のサイドバーに設置するとか、HTMLをいじって小さいトップ作るとか。
最新記事としてトップに固定させるのは力技で推奨されない方法なので、是非是非ご検討を。
No Title
コメントありがとうございます。
俺らのPCだと完全に画面停止ですよねーw
とある3年さん>
コメントありがとうございます。
興味を持っていただけてよかったです。
トップページの件に関しては和田氏に相談してみます。
俺、ブログの仕組みよくわからないので…
No Title
No Title
個人的にはちょっと前やってたみたいに、左の「カテゴリ」と「最新記事」を逆にしてみたらいいかと思います。
俺も更新されているかどうか確認するのにいちいちスクロールするのがうんぬんかんぬん。