今やっている案件でPolar coordinateをやろうと思ったのだけど、ちらりと世の中に出回っているリソースはほとんどがgetPixel32,setPixel32での力技。
衝撃的だったのは直接srcBMからgetPixel32してsetPixel32しているやつ。
これだと変換後の絵がかなり汚い。(瞬間としての一コマの絵ならありなのだけど)
通常はdisplacementmapのtexture mapをsetPxel32でDrawしているタイプ。
(初回のマップ生成には若干計算時間はかかるだろうけど、2回目からは軽い)
ただこれでもやっぱ汚い・・・。
特にpolar系のような変位量の多くなるパターンでは目も当てられない。(満遍なく汚いw)
変位乗数の母数がカラーチャンネルだから、256階調しかないっつーのが問題なのかもしれんが・・。
(これって-256からもで512だっけな?忘れた)
おそらくPhotShop等の画像処理ソフトの中では上記のような計算をしつつ、
その出力結果に対してConvolutionFilterを適応しているのだろうけど、とりあえずそこまで負荷を毎フレームかけるのは無理ッス。
ということで一度このやり方での実装は挫折して、アナログな実装に切り替えます。
はあー。
カテゴリー