HSP | 「Kerupani129 Project」の文字を虹色にする

HSP | 「Kerupani129 Project」の文字を虹色にする

ブログトップで使っているGIFアニメーションはこれを元に作成しました。
以前はSWFでやっていましたが、IEとかだと動作重いですし、他のサーバーにうpする必要があるので、GIFアニメに変えてみました。

buffer 1,560,80
picload "Kerupani129 Project 2.bmp"
buffer 2,560,80
repeat 560
hsvcolor 191*cnt/560,255,255
line cnt,80,cnt,0 // 終点が描画されないため、1pxずらす
loop
screen 0,560,80
move=0
gmode 2,560,80
*main
redraw 0
color : boxf
pos 0,0 : gcopy 2,move,0,560-move,80
pos 560-move,0 : gcopy 2,0,0,move,80
pos 0,0 : gcopy 1,0,0,560,80
move-20
move=(move+560)\560
redraw
await 33
goto *main

■HSP製のをGIFアニメにする方法
まず、タイマーになるような変数を用意します。
1ループごとにタイマーを1づつすすめ、bmpsaveでファイル名にその数字を使用して1フレームづつ画像を保存するようにします。(あるフォルダにまとめて出力されるようにしておいたほうが良いです。)
そして、同じのを繰り返すようなプログラムであれば、その1周期分にタイマーがなったらend、とすればよいです。
次に、GiamというソフトにそのBMPを全部読み込ませます。
1フレームごとのウェイトを指定し、保存します。
あと、Giamには容量を削減する機能が付いています。
しかし、GIFの特徴で、横に同じ色が並んでいると容量が削減できるんです。(「最適化」)
なので、もともと容量が全然かかっていないようなGIFの容量を削減しようとすると逆にサイズが大きくなってしまうのでご注意ください。
一家普通に保存して、別に、最適化したのを保存して、それで容量の小さいほうを取ったほうをとる、とするのが一番良いと思います。

- 補足 -

スクリプトに画像使ってるのにその画像をうpしてなかった…。すいません。

picload "Kerupani129 Project 2.bmp"

color
font msgothic,50,1
pos 35,15 : mes "Kerupani129 Project"
repeat 560
x=cnt
repeat 80
y=cnt
pget x,y
if ginfo_r!255 | ginfo_g!255 | ginfo_b!255 : color : pset x,y
loop
loop

と書き換えてください。すいません。

(普通にmesするだけだと、文字の周りに余分なところができるため、pgetとpsetで対処しています。)
↓クリック求む