このページにアクセスすると、Java Go!と書かれたボタンが2つ出てくるが、上の方が今回作ったもの。クリックすると別ウィンドウが出てきて、その中で花火が上がる。その中でマウスをクリックしてドラッグすると色々な花火が上がるようになっている。どこをいじるとどんな花火が出てくるか、いろいろお試しあれ。
2番目のボタンは今から1年くらい前に作ったもので、同じようなことを目指したのだが、あまりうまくいかなかったもの。改良していく予定だったのだが、いろいろ忙しくなってこのプログラムの更新が途絶えてしまった。久しぶりに1から作り直したのが今回の作品である。今後はこの作品をベースにいろいろ発展させていきたい。
このプログラムは、簡単に言うとJavaで作った花火のシミュレーションである。これは1995年にPyroWeb(現在のURL)を作って、その年の年末から始めたので、かれこれ12年くらい作っていることになる。昔の作品はこちらにある。
基本的には昔から花火が好きで、プログラミングを生業としているのでグラフィックスで花火を表現してみようと思いついたのが最初であった。その後1995年のインターネットの普及にあわせてJavaでプログラムを作るようになった。
最初は「本物の花火をいかに忠実に再現するか」ということに注力していた。Version1から3までいろいろと試行錯誤して本物の花火に近づける努力をしてきた。今あらためてVersion1の花火を見てみると、まったく現実感がないというか、変な花火に見える。昔はコンピュータの処理速度が遅く、リアルタイムに見せるためにかなり計算を省略しなければならなかったので、このようなものになってしまった。
いろんな種類の花火を作って行くと、それらを組み合わせてスターマインのようなものを作るようになった。そしてそれは当時のPyroWebという個人ウェブサイトのトップのページに置いた。これはアクセスカウンタを増やすためでもあった。しかし見て楽しめるものを作るために、玉の色や大きさを変化させたり、だんだん大きな玉を揚げたりと強弱をつけたりして「ストーリー」を作っていった。
しかし完全にプログラムだけでストーリー構成を作っていると、どんなに長時間作っても、何度か見ていると飽きてきてしまう。そこでプログラムをインタラクティブにすることで、ユーザが何かを入力すれば、それに応じて上がる花火が変化していくようなものを作れば、長時間楽しめるのではないかと思い、作ったのがこのインタラクティブのJava花火である。
今後の目標は、ユーザが入力(マウスの動き)と画面の花火の変化が実感できるようにしていくことである。
はなびしさん、こんにちは。まゆみです。
花火、よくできてますね。とてもおもしろいです!私はグラフィックのプログラミングをした経験がなく、こんなのが自分でできたらいいなぁと思います。いつかご教示願えたらと思います。
投稿情報: mmm | 2007-04-10 12:17
mmmさん、コメントどうも。
グラフィックスプログラムは、仕事でやったことがありますが、このJava花火を始めたのはそれよりも前のことです。あ、学生のころバイトでちょっとやったことがあるかな?
グラフィックスは三角関数など中高でやっていた数学の知識があれば(思い出すことができれば)、取っ付きやすいのではないかと思います。是非チャレンジしてください。
投稿情報: 作者 | 2007-04-15 23:51