アニメーションについて。
Cydia.hatena 2013/6/14(Fri) 20:15:40|NO.54888
どうも。毎回申し訳ございません。
今回は、gmode命令などを使用し、少しずつ黒く塗りつぶすアニメーションを作成しました。
buffer 34
color
boxf 0,0,800,600
gsel 0
font "メイリオ",30
mes "アニメーション"
wait 100
gmode 3,,,70
pos 0,0
gcopy 34,0,0,800,600
wait 5
gmode 3,,,85
pos 0,0
gcopy 34,0,0,800,600
wait 5
gmode 3,,,100
pos 0,0
gcopy 34,0,0,800,600
wait 5
gmode 3,,,115
pos 0,0
gcopy 34,0,0,800,600
wait 5
gmode 3,,,130
pos 0,0
gcopy 34,0,0,800,600
wait 5
gmode 3,,,145
pos 0,0
gcopy 34,0,0,800,600
wait 10
gmode 3,,,160
こうやって作成したのですが、逆にどんどん明るくするアニメーションを作ろうと思って
配置を逆にしましたが、すぐに真っ黒に塗りつぶされました。
まるで
color
boxf
で背景を塗りつぶしただけのものになってしまいました。
どうやったら逆に明るくするアニメーションを作成できるでしょうか?
test 2013/6/14(Fri) 20:24:22|NO.54889
このスクリプトが何をしているか把握していますか。
gmodeで半透明合成コピーにして、buffer34から何回もコピーしてきています。
buffer34は真っ黒な画像ですね。
つまり、最初に文字をかいて、その後に何度も半透明の黒を重ね塗りしていることになります。
ですから、順番を逆にしたところでやはり黒を重ね塗りしているのは変わらないため黒くなります。
ちなみに、gmodeの第四引数がだんだん増えていますが、全部おなじ数字にしてもだんだん暗くなります。黒の濃さを指定しているわけではなく、黒を上塗りする濃さを指定しているからです。
直すには、暗くなる前の画像もバッファに保存しておいて、毎回もとの画像をコピーしてきてから黒を合成するとかはどうでしょうか。
そうすれば黒の割合を小さくしていけば明るくなっていきます。
また、今回の話題とは直接関係ないですが、同じようなスクリプトが何度も繰り返されているのでループを使うときれいに書けます。
Cydia.hatena 2013/6/14(Fri) 21:20:52|NO.54890
いろいろ試してみましたがどうしてもコードがぐちゃぐちゃ&理解不能状態に陥ってしまいました。
なにか、簡単なコードを出していただければ...Orz
Cydia.hatena 2013/6/14(Fri) 21:29:12|NO.54891
buffer 1
color
boxf 0,0,800,600
buffer 2
gmode 3,,,50
gcopy 1,0,0,800,600
gsel 0
color
boxf
repeat 20
gmode 3,,,50
pos 0,0
gcopy 2,0,0,800,600
wait 5
loop
end
こんな感じになったのですが...真っ黒→白ではなく、半透明の黒→白になってしまいました。
どうしたらいいでしょうか?
Cydia.hatena 2013/6/14(Fri) 21:38:44|NO.54892
たった今解決いたしました!
testさん、本当に申し訳ございませんでした!!