神様との対面(1)

The Art of Computer Programming Volume1 Fundamental Algorithms Third Edition 日本語版 (ASCII Addison Wesley Programming Series)
The Art of Computer Programming (2) 日本語版 Seminumerical algorithms Ascii Addison Wesley programming series

尊敬しているプログラマは?と尋ねられたら、私はKnuth先生の名前を真っ先に挙げる。しかし、私がKnuth先生の「The Art of Computer Programming」を読んだのは大学一年のときであって、自分のプログラマとしての資質はもっと早い段階に形成されていたとみるべきである。いったい、私は誰の影響を一番受けたのか?


それは、間違いなく吉村氏だろう。(id:yaneurao:20040719) 氏は、「スターフリート/B」「サンダーフォース」、「スタークルーザー」のプログラマとしても有名だが、私の場合、Oh!MZ誌に掲載されていた「MAGIC」(Z80用の3Dグラフィックライブラリ)の作者だと言われたほうがピンと来る。


プログラミングのための線形代数

当時、中学生だった私は、MAGICのソースを眺め、線形代数の面白さに取り付かれた。いまなら、ビギナー向けの本も充実しており、仮に小学生が線形代数を学んだとしてもそれほどの困難はないのだが、正直、当時の私にはチョット辛かった。図書館で数学の本を借りてきてひたすら読む毎日だった。


ただ、数学より、私は氏のプログラム上のさまざまな技法に驚かされた。私は中学1年のときにゼビウスをリバースアセンブルしてプログラムの全容を解明していたが、正直言って、(ゼビウスと比較すれば)吉村氏のプログラミングテクニックのほうが数段、格上だと感じた。


もちろん、プログラムはテクニックだけではなく保守性やら、設計やらそういったもののほうが大切であることが多く、また、ゲームである以上、ゲーム性やら操作性やらが重要だ。そういう点においてゼビウスが名作であることには疑問の余地もない。ただ、当時のパソコンは本当にしょぼくて(Z80 4MHzは現在のパソコンの1/1000程度の速度)そういうパソコンで3Dのグラフィックがリアルタイムに動いているという事実自体、畏怖の念を抱かせるに十分だった。


そう言う意味で言えば、私というプログラマの育ての親とも言うべき吉村氏。私にとってまさに神様的存在なのだが、このたび吉村氏が私にヘルプを出してきた。ここで力にならねば男が廃る!そんなわけで氏と会うことにした。(つづく)