シーン5 リリア振り向きシーン
まず、スクリーンショットのBMPファイルから、一枚絵を切り出します。
それから、リリアの変化する部分のみを、切り出します。
ここでも、セル分解プログラムが、大活躍しました。
それぞれの画像をセル分解しておき、それぞれ表示しても良いのですが、それをすると簡単に、メモリーがあふれてしまいます。
アニメーションなので、変化していない部分があることに気づきます。そうです。それぞれの画像を縦につないで、まとめて、セル分解してしまえばいいのです。
最初、全てのフレームをまとめて、分割しようとしたらのですが、256通りを越えました。
256通りを越えるとダメです。1バイトで扱うという制限を課しているからです。
仕方ないので、前半と後半に分けました。
前半のみ分解して保存。。後半のみ分解して保存です。
あとは、できあがったデータに対して、どの高さで折り返すか、フレーム数はいくらかなどを、手作業で打ち込みます。
これで、メモリー内に納めることに成功し、高速にアニメーションできるようになりました。
ただ、実際見てみると、書き換えが遅いですけどねぇ。。
うーん。VRAMアクセス方式の限界か。。orz
これですけど、変化したところだけを書き換えるようにすれば、もっとスムースになるかも。。(^^;
でも、いちいち変わっているかどうかを判別するのにも、コストがかかるので、それをやるぐらいなら、順番に表示した方が速いかも知れません。。
ちなみに、ここだけの話、後で見てみると、1つだけフレームを抜かしてあるようですね。。
なんで?と思ったのですが、よくよく見ると、メモリーがきちきちだから。。orz
速度的にも、限界がありますからねぇ。。(=_=)トオイメ
それにしても、88は、見えないだろ?というところにもフレームが入っていて。。(以下略)
[追記] 2012/2/23
よーく見ると、完全に前を向いてからは、下半分が書き換わっているだけです。
後半は、下半分のみ切り出して、書き換えるようにしました。
完全に前に向くところまでは普通に書き換えて、それ以降は、下半分のみ書き換えます。
左の絵のように、下半分のみ切り出して、縦に結合して、セル分解しました。
まだ、開発版ですが、少しだけ速くなったような気がします。(^^;;