Ruby+Shoesでスキャニメーションを作ろう!(その2)
(追記:2010/7/10)
Rubyだけで画像を生成する方法を用意しました
Rubyでスキャニメーションを作ろう! - hp12c
「ギャロップ!! (しかけえほん)」に触発されて
ScanAnimationというサイトを作りました
サイトでは馬が走る絵とカンガルーが跳ねる写真と
文字が動いて見えるページを用意しています
見ての通りこれは
複数枚の画像を重ねてできる一枚の合成画像に対して
マスク画像を動かすことで動画を構成しています
この合成画像とマスク画像を作れれば
誰でも先のようなサイトを作ることができます
ここではこれらの画像の作り方を説明します
なお作成にはRubyおよびShoesのインストールが必要です
インストールは各サイトから行えます
ターミナルあるいはコンソールで
Ruby -vおよびShoes -vとすれば
インストールの有無が確認できます
Shoes • Colorful programs for Mac OS X, Linux and Windows
合成画像の作り方
- 連続画像を用意し、0から始まる連番付きのファイル名とします(ex. horse0.png, horse1.png, horse2.png..)
- gist: 1981 - GitHubから拙作scan_animaker.rb,scan_animator.rb,animator.rbを入手します。他のファイルは無視してください
- 各スクリプトのNUM_IMGSに画像数をセットします。MASK_WIDTHで合成画像の粗さを変えることもできます
- Shoesでanimator.rbを起動してダイアログで先頭画像(0番)を選び、画像がうまく動画になるか確認します。スクリプトのanimateの数字を変えることで再生速度を調整できます
- 確認できたら次にShoesでscan_animaker.rbを開き、ダイアログで先頭画像を選ぶと合成画像とマスクが生成されます
- これらを個別にキャプチャして保存します(ex. horse.png, mask_horse.png)。MacではCommand+Shift+4でキャプチャできます
- Shoesでscan_animator.rbを開き、ダイアログで合成画像(ex. horse.png)を選んで動きを確認します。スクリプトのanimateの数字を変えることで再生速度を調整できます
- 画像処理ソフトでマスク画像の白色部分を透過させます。GIMPでは「色->色を透明度に」でできます
以上で終わりです
これらのソフトおよびスクリプトは無償・無保証です