謎の技術研究部ホームタグ謎の技術研究部とはTop›Blender›マテリアル2022-12-05(更新)【Blender】アンビエントオクルージョン(AO)の強さを調整する方法AOはノードで組む必要があるため少々難解。テクスチャとMIXする場合少し複雑になるのでわかりやすく解説する。Shaderノードを使う方法を掲載していたが、あまり良い例ではないと判断しMixRGBノードを使った方法へ修正。概要アンビエントオクルージョン(以下AO)とは次のようなものまずAOがない場合、凹になっている角がわかりにくいがAOをONにするとコーナーに影のようなものが落ちてハッキリするこの記事ではこのAOの濃淡を調整するノードを組んでいく。上に加えてテクスチャが付いたオブジェクトにAOを適用する例を最後に出す。なにげにこれが面倒なので最後まで読んでいただけたらと思う。準備EeveeレンダラーがEeveeの場合はアンビエントオクルージョンの設定をONにしておく必要がある※もちろんだがコレをONにしただけでノードを組まないと何も変化しない。CyclesCyclesの場合は事前の設定は必要なくノードだけ組めば良い。ビューレイヤープロパティにAO設定のチェックがあるが、これはオフのままでよかった。アンビエントオクルージョン用のノードAOを描画するには次のノードを使用する。Occlusion(アンビエントオクルージョン)というノード。これをBSDFのColor(カラー)につなぐだけでAOが作用する。距離調整は簡単この状態でAOノードのDistance(距離)の値を大きくすると、影が乗る範囲が広がる。濃淡の設定ができないここで気づくと思うが距離設定だけだと影の濃淡設定が全くできない。濃く濃淡をコントロールしたい場合は次のようにColorRamp(カラーランプ)を挟んだノードにすると良い。黒のスライダを右に移動してやれば影は濃くなる。薄く逆に薄めたい場合はカラーランプの黒になっている場所を灰色にしてみよう。テクスチャとAOの混同ここまでは簡単だがテクスチャ付きのオブジェクトの場合マテリアルはどうしたらいいのだろうか。シンプルな方法はベクトル演算をする方法。Math(ベクトル演算)ノードを追加する。※演算子をかならずMultiply(乗算)にすることテクスチャとカラーランプを繋いでそのままBSDFへ。Math(数式)ノードではなくMixRGB(ミックス)ノードのMultiply(乗算)もほとんど同じ意味合い。Fac(係数)を調整することでテクスチャの薄さがコントロールできる。わからんシンプルな方法とは言ったが、カラー同士(ベクトル)を乗算するので初心者は理解できないかもしれない。方法2:MixRGB(ミックス)ノードを使うこちらのほうが一般的だが、少し難しい。ColorRamp(カラーランプ)のColor(カラー)をMixRGB(ミックス)のFac(係数)へつなぐMixRGB(ミックス)の上から2番めのColor1(色1)には黒を入れる。テクスチャのColor(カラー)をColor2(色2)へ繋ぐ上の例と違いFac(係数)につながっている点に注意メリットこの方法を使うと影の色を黒以外に変更できる。単色指定ではなく別のテクスチャをColor1に繋げば面白いMixも可能デメリットデメリットというほどでもないが、こちらは動作の原理の理解が必要。今回はMixRGBのノード解説ではないので割愛。上で2つの方法を掲載したが、どちらを使うのが良いのだろうか。実行結果に画質の差があるわけではないのであまり気にしなくて良い。AOの部分を黒以外にする可能性があるならMixRGBを使えば良い。Mathで演算するケースはBlenderユーザーだとあまりみかけない印象だが、ノードの処理内容からみてこちらのほうが僅かに軽いのではないかと考えている。ノード数が多いマテリアルになるような場合は軽い方を使ったほうが良いだろう。以上これらの方法はAOのみならず様々なケースでマテリアルを組む基礎とも言えるので覚えておくと良いと思う。今回はAOの調整方法を簡単に記したサイトが少なかったため記事にしてみた。この記事のタグBlenderマテリアル(Blender)この記事をシェア著者Ultra-Noob謎の技術研究部部長。3DCG以外にもDTMやプログラミング等も研究する。謎の技術研究部とはプライバシーポリシーホーム(自動スクロールなし)ご意見、お問い合わせ。