★きらら 自分から出る声を聴こう ★

2012年6月2日土曜日

逃げたい数学が今の俺のツール

 ずっと前の小学生時代。16点の算数。

わけのわからない証明。後面積の計算、微分積分。

行列。

行列が今は友達だ^^

なぜなら、BMPなど画像ファイルはびっちりとデーター上はマトリックス(行列)だ。


今一度、マップ書いてそのマトリックスどおりに(その開発言語の先生のやり方に習うが)

それをメモリー内でああでもない、こーでもないと入れ替える。

今は2D(平面表現)しか書けないが、

1234
1234
1234
1234

がマップデータ、これをプログラムが読んで対応したキャラクター状の画像を置いていく。(仮想画面に)

X1時代でも縦スクロールルーチンを書いているときに気づいたが(参考書どおり、その後、最適化

驚いたことにプロと同じ方法とその後、その手の雑誌の記事で知る。慢心。どかーーん。)

それくらいにX1は解かりやすかった。

ゲーム用にハードがなっていたような。(X68kなんかアーケード(1980-90年代の)ゲームが動くように作ったとかどっかで聴いた気がする・・・ 曖昧ですまん))

上のマップデーターを回転させると、

4444
3333
2222
1111

となる。これを仮想画面と定義したメモリー上でやる。それからPUTルーチンで実際の画面に出す。

人に教えると自分の成長となるというが、真実だな。

8ビット機でも簡単にできた。原理的には。


縦スクロールは?

1111
2222
3333
4444

これをメモリー上でずらす。

0000
1111
2222
3333

後はPUTルーチンでブロック転送だ^^

この数字をキーにチップ変換し(読んでそれ対応の8X8か、16X16か、32X32ドットかの)

マップチップに置き換え描画。これを最近の汎用機は簡単に出来ると思う。

(私も後日、サンプルで遊ぶつもりだ))

Windowsは(Ubuntuもだが)、歴史の積み上げでこれ相応のハードと開発者のノウハウが有る。

俺も使う。だが、おれ様に変えて使いたいが(理想は)・・・

もし、プログラマーになりたいなら、この話を覚えておいて。

今、数学が苦手でも運命ならやたら数字とにらめっこする職種に本人の意思と関係無しに行くだろうから^^

それを対人関係ミキサーで削られて、残り滓の自分自身がましな人(過去と比較)になり、

人生の現実と好きな道のドッキングと融合が出来上がる^^

さて、日付が変わったようだ^^

寝るとしよう。


テストは無いので安心して。