エッシャー的なエフェクトを高速に

気づき→実装

先日作成した「AS3でもエッシャーっぽい絵を出してみた」について、高速化を考えてつつ、手元にある「ネタ帳デラックス|Flashテクニック」をぱらぱらと見ていたときのことです。

ネタ帳デラックス | Flashテクニック (MdN books)

ネタ帳デラックス | Flashテクニック (MdN books)

この本のネタとして載っているディスプレイスメントマップを使えば、ぐるぐる度合い(エフェクト効果のパラメータとか)をリアルタイムに変えるのは難しくても、画像へ効果を適用させる処理自体は高速化ができると思い、試してみました。
結果として、画像は荒いのですが、期待した速度は得られました。

Spark projectにコミット!

また、今回作成したクラスもライブラリとして使えるようにしてSpark projectにコミットします。

ディスプレイスメントマップは楽しい!

ディスプレイスメントマップを使ったのは初めてだったので、パラメータの説明をしっかり読んでから試してみました。

最近ではFlashPlayer10で使えるようになるPixelBenderが流行っているようですが、ある程度の処理ならこれでいけそうな気もしてきます。

課題

画像の荒さは、ディスプレイスメントマップ周りの設定処理が甘いのか、ディスプレイスメントマップ処理そのものの特性なのかは分からないけど、これは時間があるときに調査しよう。