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

【概要】Blenderでテクスチャマッピングを例として、シェーダーエディタを用いてシェーダーツリーを編集し、レンダリングする手順を説明する。シェーダーエディタの基本操作、テクスチャ座標の使用、粗さの設定、バンプマップの設定について、具体的な操作手順を示す。

【目次】

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

【サイト内の関連ページ】

【関連する外部ページ】

前準備

Blenderのインストール

【Blenderのインストール】

メニューの日本語化を行っておくと使いやすい。

Blenderの基本操作のまとめ

【サイト内の関連ページ】

Blenderのシェーダーツリー

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

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

  1. まず、ルック開発モードに切り替える。ルック開発モードへの切り替えは、メニューで行うことができる。
    ルック開発モードへの切り替えメニュー

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

  2. 次に、スタジオライトの設定を行う。スタジオライトの設定はメニューで行うことができる。ここでは、一番左のcity.exrを選ぶ
    スタジオライトの設定メニュー

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

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

シェーダーエディタの例1
シェーダーエディタの例2
  1. Blenderのワークスペースを「シェーディング(Shading)」に変更する。
    ワークスペースの変更メニュー
  2. Shading」のワークスペースに変わるので確認する。
    Shadingワークスペース

    下側の画面は、シェーダーエディタ(Shader Editor)になっている。この中には、シェーダーツリー(Shader Tree)が表示されている。シェーダーツリーでは、互いにノード(特定の機能や処理を持ったシェーダーの構成要素)が接続されている。現在は、「プリンシプルBSDF」(物理ベースのシェーディングモデルを実装した標準的なマテリアルノード)と「マテリアル出力」の2つのノードが接続されている。

    シェーダーツリーの初期状態
  3. シェーダーエディタを使用して、シェーダーツリーの編集が可能である。ノードの移動は、マウス操作で行うことができる。
    ノードの移動

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

    ノードの削除メニュー

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

    ノードの追加メニュー

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

    ノード間の接続

演習

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

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

次のように操作する。

  1. 「レンガテクスチャ」を追加する。「レンガテクスチャ」は、メニューの「追加」の「テクスチャ」の下のメニューから追加できる。
    レンガテクスチャの追加メニュー
  2. 「レンガテクスチャ」を追加したら、下の図のように接続する。「レンガテクスチャ」の「カラー」を、「プリンシプルBSDF」の「ベースカラー」(Blender 4では「基本色」とも表示される)に接続する。
    レンガテクスチャの接続
  3. 3Dビューポートで、確認する。
    レンガテクスチャ適用後の3Dビューポート
  4. 「レンガテクスチャ」の「色1」、「色2」、「モルタル」の色を調整する。色は自由で良いが、「モルタル」は、「色1」と「色2」よりも暗い色になるように設定する。
    レンガテクスチャの色調整

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

    色調整後の3Dビューポート

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

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

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

UV座標を使用した例
オブジェクト座標を使用した例
  1. テクスチャ座標」を追加する。「テクスチャ座標」は、メニューの「追加」の「入力」の下のメニューから追加できる。
    テクスチャ座標の追加メニュー
  2. テクスチャ座標」を追加したら、下の図のように接続する。「テクスチャ座標」の「UV」を、「レンガテクスチャ」の「ベクトル」に接続する。これは、「テクスチャ座標」の「UV」を使用するための設定である。
    UV座標の接続
  3. 3Dビューポートで、確認する。
    UV座標適用後の3Dビューポート
  4. 今度は、下の図のように接続する。「テクスチャ座標」の「オブジェクト」を、「レンガテクスチャ」の「ベクトル」に接続する。これは、「テクスチャ座標」の「オブジェクト」を使用するための設定である。
    オブジェクト座標の接続
  5. 3Dビューポートで、確認する。
    オブジェクト座標適用後の3Dビューポート

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

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

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

粗さ設定後の3Dビューポート
カラーランプを使用したシェーダーツリー
  1. カラーランプ」(特定の入力値に応じた色の変換や分布を制御するコンバーター)を追加する。「カラーランプ」は、メニューの「追加」の「コンバーター(Converter)」の下のメニューから追加できる。
    カラーランプの追加メニュー
  2. カラーランプ」を追加したら、下の図のように接続する。「レンガテクスチャ」の「カラー」と、「カラーランプ」の「係数(Fac)」をつなぐ。「カラーランプ」の「カラー(Color)」と、「プリンシプルBSDF」の「ベースカラー」をつなぐ。
    カラーランプの接続
  3. 3Dビューポートで、確認する。
    カラーランプ適用後の3Dビューポート
  4. カラーランプの反転を行う。

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

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

    カラーランプの反転メニュー
  5. カラーランプにより、反転するので確認する。
    反転後の3Dビューポート
  6. ゲージを調整し、モルタルは白、レンガは黒になるように調整する。
    カラーランプのゲージ調整
    ゲージ調整後の3Dビューポート
  7. 「カラーランプ」のカラーを、「ベースカラー」から「粗さ」につなぎなおす。
    粗さへの接続
  8. 回転させて、モルタルの部分は粗さが高く、レンガの部分は粗さが低いことを確認する。
    粗さの効果確認

演習

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

カラーとベースカラーの接続
接続後の結果

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

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

バンプマップ設定後の3Dビューポート
  1. 次の手順で、「レンガテクスチャ」を「ノイズテクスチャ」(ランダムなパターンを生成するテクスチャノード)に変更する。
    1. カラーランプの調整を元に戻す。左端が白、右端が黒になるようにする。
      カラーランプの初期状態への復帰
    2. ノイズテクスチャ」を追加する。「ノイズテクスチャ」は、メニューの「追加」の「テクスチャ」の下のメニューから追加できる。
      ノイズテクスチャの追加メニュー
    3. 下の図のように接続する。このとき、「レンガテクスチャ」は不要なので削除する。
      ノイズテクスチャの接続
    4. 表示を確認する。
      ノイズテクスチャ適用後の3Dビューポート
  2. バンプ」(表面の凹凸効果を生成するノード)を追加する。「バンプ」は、「追加」から「ベクトル」の下にある。
    バンプノードの追加メニュー
  3. カラーランプ」を追加する。「カラーランプ」は、メニューの「追加」の「コンバーター(Converter)」の下のメニューから追加できる。
    カラーランプの追加メニュー
  4. 下の図のように接続する。「バンプ」の「ノーマル」(表面の法線方向を示すベクトルで、光の反射計算などに使用)は、「プリンシプルBSDF」の「ノーマル」につなぐ。
    バンプノードの接続
  5. これで、バンプの効果を確認する。
    バンプ効果の確認
  6. バンプの「距離」(バンプによる凹凸の強さ)を変更してみる。
    バンプ距離の変更
  7. バンプの距離が変化したことを確認する。
    バンプ距離変更後の3Dビューポート
  8. 立体を回転して、バンプの効果を確認する。
    回転後のバンプ効果
  9. スタジオライトを別のものに変更して、バンプの効果を確認する。Blender 4では、スタジオライトの設定は3Dビューポート右上の「シーン」メニュー、または「表示」から「スタジオライト」から行うことができる。
    スタジオライトの変更メニュー1
    スタジオライトの変更メニュー2

演習

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

  1. HSV(色相/彩度/輝度)」(色の調整を行うノード)を追加する。これは、「追加」から「カラー」から「色相/彩度」から追加する。
  2. 次のようにつなぎ、「カラー」は自由に設定する。
    HSVノードの接続
    HSVノード適用後の3Dビューポート

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