以前私が構想していた、MSXでアニメを作るためのツール群のうち、輪郭だけのモノクロアニメを描くツールです。本の隅にパラパラマンガを描くような感覚で気軽にアニメを描くことができます。さらに素晴らしいことに、本のパラパラマンガの場合は前の絵が薄く透けて見えるだけですが、ACE-DRAWは次の絵も透かして見ることができるので「コマの中割り」が簡単にできます。
ACE計画ではもう一つ、ACE-DRAWで描いた単色アニメに彩色するACE-PAINTというツールもできるはずだったのですが、そちらは日の目を見ることはありませんでした。Java版ACE-DRAWが完成して余力があったらACE-PAINTもJavaで作るかもしれません。 |
Javaには"Shape"というものがあり、これを使えば絵をすべてベクトルデータで表すこともできそうなのですが、そういう方向へは行かずMSX版と同様にビットマップで絵を表すことにします。
ベクトルデータだと「コマの中割り」を計算で自動化できそうなので魅力的なのですが、拡大画面でドットを一個一個置いていくような描き方の絵はうまく表現できず、MSX以来そういうタイプの絵ばかり描いてきた私にはイマイチなじめません。
またベクトルデータにした場合1枚の絵に線分が何百本とか何千本とかのオーダーになってもオールJavaのプログラムではたしてリアルタイムで再生できるのか未知数です。(試してないのでわかりません。あんがい今時のパソコンでは平気でできてしまったりして・・・)
画像サイズは320×240ドットに固定ということにします。あまりドット数を多くしてもドット修正に時間がかかるばかりで疲れます。とくにアニメは絵の枚数が命ですから一枚の絵のドット修正に時間がかかるようでは困ります。この程度のドット数が適切でしょう。
ただ、今のパソコンの画面は最低でも1024×768ドットというのが当たり前となりつつあり、そこで320×240ドットの画像はあまりにも小さすぎて侘しいです。ですから、作成したアニメは倍サイズで再生するような機能も付けようかと思います。
MSX版で一番辛かったのはやはりメモリでした。アニメデータ全部をオンメモリで扱えるはずなどなく、フレームを移動するたびにディスクアクセスしていました。今回のJava版は、あの頃の欲求不満を晴らすべく湯水のようにメモリを使って、オンメモリでデータを扱います。
基本的に1ドット=1ビットのビットマップで無圧縮のデータを絵の枚数ぶんだけ順番に繋げたような素朴なデータ形式にする予定です。ファイルの先頭と絵一枚一枚ごとに簡単なヘッダが付くことになると思います。それほど複雑ではないので他の画像フォーマットとの変換ツールを作るのも難しくないと思います。
MSX版はファイル上での絵の順番と実際に再生する順番が必ずしも一致していませんでした(それを正しく扱うためにポインタ配列が付いてました)が、Java版はオンメモリでデータを扱うのでファイルに書き出す時点で順番に書きだせば済みます。
では、実際のプログラム製作に入りましょう。いきなり完成させるのも大変なので、少しずつ段階的に作っていきます。
第1回 モノクロ2値お絵かき その1(06/11/07)
第2回 ACE−D−GENプロトタイプと、シンプルACDビュワー(07/03/04)
第3回 ACE−DRAWプロトタイプ1(07/04/22)
第4回 ACE−DRAWプロトタイプ3(07/07/15)
第5回 ACE−DRAWプロトタイプ4(07/08/04)
年寄りの回顧コーナー
|