雪がふります。
なんとなく、眺めます。
使っている画像は、歌川広重「東海道五十三次(保永堂版)」より「蒲原 - 夜の雪」です。
(うーん、実際はもちっと雪がぼんやりとしておるのだが・・)
KALWSNW1.lzh (LZH圧縮) - 12/25
KALWSNW1.zip (ZIP圧縮) - 12/25
[お断り]
このプログラムを使用したことで、どのような損害または障害が発生したとしても、作者は一切その責任を負いません。ご使用は、あくまで自己責任で行ってください。
--------
[改版]
02.12.25
初公開
プログラムは次のような構成。
KALWSNW1.BAS
最初は雪の一つ一つをスプライト化していたのですが、処理速度の関係で違う手法を取ることに。
雪を描いた全画面のスプライトをずらして重ね、それぞれのスプライトを異なるスピードで動かし、ランダムに左右に揺らすと、結構それっぽくなりました。しかし、よく見ると、同じスピードで降下している固まりがあったりと不自然な部分があります。この問題を解消するには、雪の一粒一粒をそれぞれに動かしてやる必要があります(これについては、下のKALWSNW2.BASにて)。
自分で用意した画像を使用する場合は、縦サイズを320ドットにし、画像のサイズを GX=...:GY=...で指定します。
この際、画像の色合いによっては黒い雪になったり、白い四角形になったりします。この場合、雪の色を調整します。R=...:G=...:B=...に0〜255の数字を入れて、最適な色合いを見つけてください。
-- ここからは、試行錯誤の記録 --
KALWSNW2.BAS
ダウンロード→KALWSNW2.BAS
雪の一つ一つをスプライト化して、それぞれに座標を逐一指定して表示しています。
さすがに処理が重たくなり、雪の動きは多少カクカクしています。また、雪の数も相当少な目です。気になる向きは、描画範囲を小さくする(XMIN,YMIN,XMAX,YMAXの数値を加減する)か、E2xの方ならCPUCLOCKを調整してみるのもよいかもしれません。
雪の数が少なく目立たないため、背景画像はとりあえず「なし」です。しかるべき画像を用意して、ソース中のコメントを外せば表示できます。
KALWSNW3.BAS
ダウンロード→KALWSNW3.BAS
同じく雪が降りますが、積もります。ただし、処理速度の関係で小さい画面です。
SPSEARCHを使うとかいろいろと試したのですが、最終的には落下先の色をPOINTで判定して・・というあまりひねりのない作りになりました。プログラム技術のつたなさもあって、判定部分が多く、かなり遅くなっています。
広重(に限らず、幕末頃の絵師のほとんど)の著作権保護期間はもちろん失効しています。
今回用意した画像は、筆者手持ちのポストカードからスキャンしたものです。
rainも同じ要領でバージョンアップしているのですが、手元に適当な画像がなく、更新はもう少し後で(やはり広重の「近江八景 唐崎夜雨」が寂寥感があっていい感じなのですが)。
・・・それにしても、この種の浮世絵なんかは青空文庫みたくパブリックドメイン的にならんものか。