« 簡易版の再生 | メイン | ピラミッドブラーの SSE2 化 »

2008年03月26日

吉里吉里 その他の開発日誌:: ブラーをもう少し綺麗に

    

吉里吉里の標準の矩形ブラーは、何か線のようなものが見えるのが少し気になっていたので、もう少し綺麗に見えるものを作ることにした。
ガウシアンブラーだとかなり重いだろうから、1,3,7,3,1 のように2の累乗値ごとに重み付けが変わるようにして作ったが、範囲を大きくしてもなかなかぼやけない。
そこで、もっと単純に 1,2,3,2,1 のように1ずつ大きくなるようにしてみて実装した。
こうするとよりぼけるようになった。
また、矩形ブラーの時のような線は見えない。
今回のを上に標準のを下に描画した時の実行結果は以下のような感じ。

blur_test_20080326.png

まずまず良好。
が、8 ~ 9 倍遅い。
アルゴリズム的には矩形ブラーと同じような方法を取って速くなるようにしているが、他は特に何も高速化を意識せず書いた。
ここから MMX 化や SSE2 化と、高速化を意識してかけば、倍かそれ以上いけるかな。
すると…… 4倍遅いぐらい?
我慢できるぐらいの速度だろうか?

で、速度計るために複数回ブラーをかけたら、矩形ブラーの変な感じが消えることに気付いた。
なんだ、2回かければよかったのか。
それでも2倍遅い程度だろうからこちらの方が速いだろう。
と言うことで、以下に2回かけた時の比較。

blur_test_x2_20080326.png

2回かける方法で十分かな。


関連記事・続きの記事

ピラミッドブラーの SSE2 化
ここで作ったブラーを SSE2 化してみることにした。 実装して計って、吉里吉里... [続きを読む]


投稿者 Takenori : 2008年03月26日 23:07




comments powered by Disqus
Total : Today : Yesterday : なかのひと