Blender のシェーダー・エディタ(Shader Editor)

Blender で,テクスチャ・マッピングを例として,シェーダー・エディタを用いてシェーダーツリーを編集し,レンダリングする手順をスクリーンショット等で説明する. Blenderは,3次元コンピュータグラフィックス・アニメーションソフトウェア. 立体の編集,レンダリング、ライト(ランプ)やカメラ等を設定しての3次元コンピュータグラフィックス・アニメーション作成機能がある.

目次

  1. 前準備
  2. Blender の基本操作のまとめ
  3. Blender のシェーダー・ツリー

サイト内の関連ページ

関連する外部ページ

前準備

Blender のインストール

Blender のインストール

メニューの日本語化を行っておいた方が使いやすい.

Blender の基本操作のまとめ

サイト内の関連ページ

Blender のシェーダー・ツリー

ルック開発モード,スタジオライトの設定

マテリアル(3Dオブジェクトの表面特性を定義する設定群)を3Dビューポートで即座に確認するために,3Dビューポートをルック開発モード(マテリアル調整のための特殊な表示モード)に変更する.スタジオライト(3D環境の照明設定のプリセット)の設定も行う.

  1. まず,ルック開発モードに切り替える.

    ルック開発モードへの切り替えは,メニューで行うことができる.

    ルック開発モードは,立体のマテリアル等を調整するために,シーン内のライトを簡単に切り替えながら確認するためのモードである.

  2. 次に,スタジオライトの設定を行う.

    スタジオライトの設定はメニューで行うことができる.

    ここでは,一番左の city.exr を選ぶ

シェーダー・エディタを使ってみる

シェーダー・エディタは,マテリアルに関する設定を シェーダー・ツリー(マテリアルの外観や特性を定義するノードの接続関係図)の編集で行うことができるエディタである. マテリアルの詳細設定を行う際,プロパティのマテリアル画面よりも視認性が高く,効率的に設定できる.

  1. Blender のワークスペースを「シェーディング (Shading)」に変更する.
  2. Shading」のワークスペースに変わるので確認する.

    下側の画面は,シェーダー・エディタ (Shader Editor) になっている.

    この中には,シェーダー・ツリー(Shader Tree)が表示されている. シェーダー・ツリーでは,互いにノード(特定の機能や処理を持ったシェーダーの構成要素)が接続されている.

    現在は,「プリンシプルBSDF」(物理ベースのシェーディングモデルを実装した標準的なマテリアルノード)と「マテリアル出力」の 2つのノードが接続されている.

  3. シェーダー・エディタを使用して,シェーダー・ツリーの編集が可能である.

    ノードの移動は,マウス操作で行うことができる.

    ノードの削除は,削除したいノードの右クリックメニュー(ノードコンテクストメニュー)で実行できる.

    ノードの追加は,メニューから行うことができる.

    ノード間の接続は,マウス操作で直感的に編集できる.

演習

シェーダー・ツリーを,次の3つのノードを使用するように設定する.

  1. 「レンガテクスチャ」(レンガのパターンを生成するテクスチャノード)
  2. 「プリンシプルBSDF」
  3. 「マテリアル出力」

次のように操作する.

  1. 「レンガテクスチャ」を追加する.

    「レンガテクスチャ」は,メニューの「追加」の「テクスチャ」の下のメニューから追加できる.

  2. 「レンガテクスチャ」を追加したら,下の図のように接続する.

    「レンガテクスチャ」の「カラー」を, 「プリンシプルBSDF」の「ベースカラー」(Blender 4では「基本色」とも表示される)に接続する.

  3. 3Dビューポートで,確認する.
  4. 「レンガテクスチャ」の「色1」,「色2」,「モルタル」の色を調整する.

    色は自由で良いが, 「モルタル」は,「色1」と「色2」よりも暗い色になるように設定する

    3Dビューポートの表示を確認しながら,色の調整を行う.

この時点での Blender ファイル:01a.blend

テクスチャ座標のノードを使用

テクスチャ座標」(3Dオブジェクト上でテクスチャが配置される位置を指定する座標系)のノードを作成し,その出力を,テクスチャのノードの「ベクトル」(方向と大きさを持つ数学的要素)につなぐ. このとき,次の2つの違いを確認する.

  1. テクスチャ座標」を追加する.

    テクスチャ座標」は,メニューの「追加」の「入力」の下のメニューから追加できる.

  2. テクスチャ座標」を追加したら,下の図のように接続する.

    テクスチャ座標」の「UV」を, 「レンガテクスチャ」の「ベクトル」に接続する. これは,「テクスチャ座標」の「UV」を使用するための設定である.

  3. 3Dビューポートで,確認する.
  4. 今度は, 下の図のように接続する.

    テクスチャ座標」の「オブジェクト」を, 「レンガテクスチャ」の「ベクトル」に接続する. これは,「テクスチャ座標」の「オブジェクト」を使用するための設定である.

  5. 3Dビューポートで,確認する.

この時点での Blender ファイル:01b.blend

テクスチャを用いた粗さ(Roughness)の設定

テクスチャを用いて,粗さ(表面の微細な凹凸による光の散乱度合い)を設定する.ここでは,レンガは粗さが低く(滑らか),モルタルは粗さが高く(ざらざらした質感)なるように設定する.

  1. カラーランプ」(特定の入力値に応じた色の変換や分布を制御するコンバーター)を追加する.

    カラーランプ」は,メニューの「追加」の「コンバーター (Converter)」の下のメニューから追加できる.

  2. カラーランプ」を追加したら,下の図のように接続する.

    「レンガテクスチャ」の「カラー」と,「カラーランプ」の「係数 (Fac)」をつなぐ. 「カラーランプ」の「カラー (Color)」と, 「プリンシプルBSDF」の「ベースカラー」をつなぐ.

  3. 3Dビューポートで,確認する.
  4. カラーランプの反転を行う.

    カラーランプ (ColorRamp)では, 画素の色や明るさを変更することができる

    カラーランプ」のノード内のメニューで, 「カラーランプを反転」を選択する.

  5. カラーランプにより,反転するので確認する.
  6. ゲージを調整し,モルタルは白,レンガは黒になるように調整する.
  7. 「カラーランプ」のカラーを, 「ベースカラー」から「粗さ」につなぎなおす.
  8. 回転させて,モルタルの部分は粗さが高く, レンガの部分は粗さが低いことを確認する.

演習

次のように「カラー」と「ベースカラー」を接続する. ほかは変更しない. 結果を確認する.

Blender のシェーダー・ツリーを用いた,バンプマップの設定

バンプマップ(Bump Map)(表面の凹凸を実際の形状変更なしに表現するテクスチャ技術)を設定してみる.

  1. 次の手順で,「レンガテクスチャ」を「ノイズテクスチャ」(ランダムなパターンを生成するテクスチャノード)に変更する.
    1. カラーランプの調整を元に戻す

      左端が白,右端が黒になるようにする.

    2. ノイズテクスチャ」を追加する.

      ノイズテクスチャ」は,メニューの「追加」の「テクスチャ」の下のメニューから追加できる.

    3. 下の図のように接続する.

      このとき,「レンガテクスチャ」は不要なので削除する.

    4. 表示を確認する.
  2. バンプ」(表面の凹凸効果を生成するノード)を追加する.

    「バンプ」は,「追加」→「ベクトル」の下にある.

  3. カラーランプ」を追加する.

    カラーランプ」は,メニューの「追加」の「コンバーター (Converter)」の下のメニューから追加できる.

  4. 下の図のように接続する.

    「バンプ」の「ノーマル」(表面の法線方向を示すベクトルで、光の反射計算などに使用)は,「プリンシプル BSDF」の「ノーマル」につなぐ.

  5. これで,バンプの効果を確認する.
  6. バンプの「距離」(バンプによる凹凸の強さ)を変更してみる.
  7. バンプの距離が変化したことを確認する.
  8. 立体を回転して,バンプの効果を確認する.
  9. スタジオライトを別のものに変更して,バンプの効果を確認する.

    Blender 4では,スタジオライトの設定は3Dビューポート右上の「シーン」メニュー,または「表示」→「スタジオライト」から行うことができる.

演習

ベースカラーは,ノイズテクスチャを利用するが,虹のような色ではなく,単色(輝度が変わる)に変更する.

  1. HSV(色相/彩度/輝度)」(色の調整を行うノード)を追加する.

    これは,「追加」→「カラー」→「色相/彩度」から追加する.

  2. 次のようにつなぎ,「カラー」は自由に設定する.

この時点での Blender ファイル:01c.blend