
Blenderのマテリアルのシェーダーで、テクスチャをぼかす方法を紹介する。
テクスチャの座標をとても細かなノイズで歪ませることで、ブラーを表現している。
あくまで擬似的な方法なので普通の画像編集アプリのブラーには劣るが、非破壊にブラーをかけることができる。
もくじ
基本的な構造

- マテリアルのシェーダーエディターを開く。
- 下記のノードをそれぞれ追加し、上画像のように繋げる。
- テクスチャ座標
- マッピング
- ミックス
- ノイズテクスチャ
- テクスチャ画像
- ミックスノードは、ソフトライトにし、値に好きなぼかし量の数値を入れる。
- ノイズテクスチャは、スケールを10000程度にし、他の値を0にする。
ミックス・ノイズノードはマッピングの後でもいいかも。
応用

レンガテクスチャをボロノイで歪ませ、それをノイズのブラー処理でぼかす。
これにより、ディティールのある加工処理を行うことができる。
テクスチャ次第で様々な表現ができる

ボロノイ > ミンコフスキーの[値]を使用すれば、美しいキラキラができる。
ぼかしではないが、これ自体が模様としてやイラスト背景などに使えそう。
ノイズ感はコンポジットノードのデノイズで緩和できる

コンポジットノードのデノイズノードを利用することで、ノイズ感を多少緩和することができる。
- ノイズブラーを使用したテクスチャを、ベイクし、一旦画像化する。
- コンポジットノードにて、ベイクした画像を追加し、デノイズノードをはさむ。
- シーン設定の解像度をベイク画像のサイズにし、レンダリングする。
注意点
バンプマップ用・ディスプレイスメントマップ用の画像には使えない

このブラー方法はあくまで見かけ上のぼかしであって、実態は細かなノイズであり、ズームして見てみると実際にはガタガタである。
そのため、バンプマップのようなデータとして使う画像に対しては、この方法は利用することはできない。
ノーマルマップには使える模様。
よくある問題
UV境界が滲んで見えてしまう問題

ベイク画像であれば、ベイク時に[余白]設定を入れておく。
これにより、ブラーをかけても余白の伸びしろ分がぼけるのでUV境界がバレない。
ただし、強くブラーをかければ余白も貫通してしまうので限度はある。

ブラーがななめになって均一にボケない問題

ノイズの出力を[値]ではなく、[カラー]にすること。
値だと白黒情報なので、RGBであるカラーにする。

マッピングのリピート数を増やしたらうまくいかない問題

マッピングノードの「前」にブラー処理するか、次項のように位置をずらす必要がある。
テクスチャの端と真ん中で処理の度合いが異なる問題がある

真ん中は全体的に均一にブラーがかかっているが、端の部分では同じ量のブラーがかかっていない問題がある。
これを修正する。
座標の右上を使う

UVテクスチャ座標は、左下が0,0で右上に行くほど縦横の値が大きくなっていく。
そのせいか右上の方がボケ具合が強い。
マッピングの位置を右上にずらして、強くボケている部分を使うことで、比較的均一にボケた部分を利用することができる。
ミックスの値が強く反映されるようになるので注意

注意点として、ミックスの値が小さくても強くボケるようになるので、除算数式ノードを挟んで値を入力しやすくするとよい。
リピートした反対側の端の色が少し出てしまう問題があるが、画像の範囲外処理方法を[ミラー]にすれば対処できる。
タイリングしているならそのまま[リピート]で良い。