ゼビウスを作ったのでアルフォスも作っておこう、と思った。
あの天才森田和郎が初代PC-8801で作ったゼビウスもどきである。
ゼビウスのコードを流用して作ればサクッとできると思うけど、それじゃあつまらない。
あの天才森田和郎が、クソ遅い初代PC-8801でも遊ぶに足りる速度を確保するために考案したパレットによる重ね合わせ、その後多くのゲームがそのテクニックを真似た、所謂G外し(RGBの3枚のプレーン中、Gのプレーンを独立させる)をやってこそのアルフォスである。
遊ぶ側からしたらまったく意味はない。
というわけで各グラフィックプレーンに見立てた3つのcanvasを用意してみたのだけれど、canvasにパレットなんて概念は無いから(そりゃそうだ)、色数を犠牲にしてマスク処理を行わずに重ね合わせを行う、なんてことしなくてもcanvasが複数枚あるならその時点でもう重ね合わせはできてしまっている。
これではいかん。
ワシはG外しがしたいんじゃあ。
色々考えたけれど、各プレーンはメモリ上に仮想的に持つことにして、重ね合わせた結果をcanvasに反映させるくらいしか思いつかない。
メモリDCに描いておいて実DCにBitbltするようなものであるな。これでG外ししたことになるのだろうか。
ちょっと行き詰まってしまったので、とりあえず起動画面だけ作ってみた。
まだグラフィックは使用しておらずテキストのみである。
もちろんただの演出であって、88のBIOSも無ければBASICも走っていない。
しかも映るのはほんの一瞬だw
すぐに次の画面になる。
とりあえずここまで。
0 件のコメント:
コメントを投稿