Blender のシェーダー・エディタ(Shader Editor)
Blender で,テクスチャ・マッピングを例として,シェーダー・エディタを用いてシェーダーツリーを編集し,レンダリングする手順をスクリーンショット等で説明する. Blenderは,3次元コンピュータグラフィックス・アニメーションソフトウェア. 立体の編集,レンダリング、ライト(ランプ)やカメラ等を設定しての3次元コンピュータグラフィックス・アニメーション作成機能がある.
【目次】
【サイト内の関連ページ】
- Blender の機能の説明,実演など: 別ページ »にまとめ
- Windows での Blender 4 のインストール: 別ページ »で説明
- Ubuntu での Blender 3 のインストールは,別ページ »で説明
【関連する外部ページ】
- Blender の公式ページ: https://www.blender.org/
前準備
Blender のインストール
【Blender のインストール】
- Windows での Blender 4 のインストール: 別ページ »で説明
- Ubuntu での Blender 3 のインストールは,別ページ »で説明
メニューの日本語化を行っておいた方が使いやすい.
Blender の基本操作のまとめ
【サイト内の関連ページ】
- Blender の基本操作(立体の新規作成と配置の調整,立体の操作,カメラ視野(カメラビュー)の調整,レンダリング,マテリアル,元に戻す,やり直す): 別ページ »で説明
- Blender の種々の操作と設定: 別ページ »で説明
Blender のシェーダー・ツリー
ルック開発モード,スタジオライトの設定
マテリアル(3Dオブジェクトの表面特性を定義する設定群)を3Dビューポートで即座に確認するために,3Dビューポートをルック開発モード(マテリアル調整のための特殊な表示モード)に変更する.スタジオライト(3D環境の照明設定のプリセット)の設定も行う.
- まず,ルック開発モードに切り替える.
ルック開発モードへの切り替えは,メニューで行うことができる.
ルック開発モードは,立体のマテリアル等を調整するために,シーン内のライトを簡単に切り替えながら確認するためのモードである.
- 次に,スタジオライトの設定を行う.
スタジオライトの設定はメニューで行うことができる.
ここでは,一番左の city.exr を選ぶ.
シェーダー・エディタを使ってみる
シェーダー・エディタは,マテリアルに関する設定を シェーダー・ツリー(マテリアルの外観や特性を定義するノードの接続関係図)の編集で行うことができるエディタである. マテリアルの詳細設定を行う際,プロパティのマテリアル画面よりも視認性が高く,効率的に設定できる.


- Blender のワークスペースを「シェーディング (Shading)」に変更する.
- 「Shading」のワークスペースに変わるので確認する.
下側の画面は,シェーダー・エディタ (Shader Editor) になっている.
この中には,シェーダー・ツリー(Shader Tree)が表示されている. シェーダー・ツリーでは,互いにノード(特定の機能や処理を持ったシェーダーの構成要素)が接続されている.
現在は,「プリンシプルBSDF」(物理ベースのシェーディングモデルを実装した標準的なマテリアルノード)と「マテリアル出力」の 2つのノードが接続されている.
- シェーダー・エディタを使用して,シェーダー・ツリーの編集が可能である.
ノードの移動は,マウス操作で行うことができる.
ノードの削除は,削除したいノードの右クリックメニュー(ノードコンテクストメニュー)で実行できる.
ノードの追加は,メニューから行うことができる.
ノード間の接続は,マウス操作で直感的に編集できる.
演習
シェーダー・ツリーを,次の3つのノードを使用するように設定する.
- 「レンガテクスチャ」(レンガのパターンを生成するテクスチャノード)
- 「プリンシプルBSDF」
- 「マテリアル出力」
次のように操作する.
- 「レンガテクスチャ」を追加する.
「レンガテクスチャ」は,メニューの「追加」の「テクスチャ」の下のメニューから追加できる.
- 「レンガテクスチャ」を追加したら,下の図のように接続する.
「レンガテクスチャ」の「カラー」を, 「プリンシプルBSDF」の「ベースカラー」(Blender 4では「基本色」とも表示される)に接続する.
- 3Dビューポートで,確認する.
- 「レンガテクスチャ」の「色1」,「色2」,「モルタル」の色を調整する.
色は自由で良いが, 「モルタル」は,「色1」と「色2」よりも暗い色になるように設定する
3Dビューポートの表示を確認しながら,色の調整を行う.
この時点での Blender ファイル:01a.blend
テクスチャ座標のノードを使用
「テクスチャ座標」(3Dオブジェクト上でテクスチャが配置される位置を指定する座標系)のノードを作成し,その出力を,テクスチャのノードの「ベクトル」(方向と大きさを持つ数学的要素)につなぐ. このとき,次の2つの違いを確認する.
- 「テクスチャ座標」のノードの「UV」(オブジェクト表面に2次元テクスチャを配置するための座標マッピング手法)
- 「テクスチャ座標」のノードの「オブジェクト」


- 「テクスチャ座標」を追加する.
「テクスチャ座標」は,メニューの「追加」の「入力」の下のメニューから追加できる.
- 「テクスチャ座標」を追加したら,下の図のように接続する.
「テクスチャ座標」の「UV」を, 「レンガテクスチャ」の「ベクトル」に接続する. これは,「テクスチャ座標」の「UV」を使用するための設定である.
- 3Dビューポートで,確認する.
- 今度は,
下の図のように接続する.
「テクスチャ座標」の「オブジェクト」を, 「レンガテクスチャ」の「ベクトル」に接続する. これは,「テクスチャ座標」の「オブジェクト」を使用するための設定である.
- 3Dビューポートで,確認する.
この時点での Blender ファイル:01b.blend
テクスチャを用いた粗さ(Roughness)の設定
テクスチャを用いて,粗さ(表面の微細な凹凸による光の散乱度合い)を設定する.ここでは,レンガは粗さが低く(滑らか),モルタルは粗さが高く(ざらざらした質感)なるように設定する.


- 「カラーランプ」(特定の入力値に応じた色の変換や分布を制御するコンバーター)を追加する.
「カラーランプ」は,メニューの「追加」の「コンバーター (Converter)」の下のメニューから追加できる.
- 「カラーランプ」を追加したら,下の図のように接続する.
「レンガテクスチャ」の「カラー」と,「カラーランプ」の「係数 (Fac)」をつなぐ. 「カラーランプ」の「カラー (Color)」と, 「プリンシプルBSDF」の「ベースカラー」をつなぐ.
- 3Dビューポートで,確認する.
- カラーランプの反転を行う.
カラーランプ (ColorRamp)では, 画素の色や明るさを変更することができる.
「カラーランプ」のノード内のメニューで, 「カラーランプを反転」を選択する.
- カラーランプにより,反転するので確認する.
- ゲージを調整し,モルタルは白,レンガは黒になるように調整する.
- 「カラーランプ」のカラーを,
「ベースカラー」から「粗さ」につなぎなおす.
- 回転させて,モルタルの部分は粗さが高く,
レンガの部分は粗さが低いことを確認する.
演習
次のように「カラー」と「ベースカラー」を接続する. ほかは変更しない. 結果を確認する.


Blender のシェーダー・ツリーを用いた,バンプマップの設定
バンプマップ(Bump Map)(表面の凹凸を実際の形状変更なしに表現するテクスチャ技術)を設定してみる.

-
次の手順で,「レンガテクスチャ」を「ノイズテクスチャ」(ランダムなパターンを生成するテクスチャノード)に変更する.
- カラーランプの調整を元に戻す.
左端が白,右端が黒になるようにする.
- 「ノイズテクスチャ」を追加する.
「ノイズテクスチャ」は,メニューの「追加」の「テクスチャ」の下のメニューから追加できる.
- 下の図のように接続する.
このとき,「レンガテクスチャ」は不要なので削除する.
- 表示を確認する.
- カラーランプの調整を元に戻す.
- 「バンプ」(表面の凹凸効果を生成するノード)を追加する.
「バンプ」は,「追加」→「ベクトル」の下にある.
- 「カラーランプ」を追加する.
「カラーランプ」は,メニューの「追加」の「コンバーター (Converter)」の下のメニューから追加できる.
- 下の図のように接続する.
「バンプ」の「ノーマル」(表面の法線方向を示すベクトルで、光の反射計算などに使用)は,「プリンシプル BSDF」の「ノーマル」につなぐ.
- これで,バンプの効果を確認する.
- バンプの「距離」(バンプによる凹凸の強さ)を変更してみる.
- バンプの距離が変化したことを確認する.
- 立体を回転して,バンプの効果を確認する.
- スタジオライトを別のものに変更して,バンプの効果を確認する.
Blender 4では,スタジオライトの設定は3Dビューポート右上の「シーン」メニュー,または「表示」→「スタジオライト」から行うことができる.
演習
ベースカラーは,ノイズテクスチャを利用するが,虹のような色ではなく,単色(輝度が変わる)に変更する.
- 「HSV(色相/彩度/輝度)」(色の調整を行うノード)を追加する.
これは,「追加」→「カラー」→「色相/彩度」から追加する.
- 次のようにつなぎ,「カラー」は自由に設定する.
この時点での Blender ファイル:01c.blend