【Blender2.8】シェーダーエディター入門

この記事では、Blenderで3Dモデルの見た目を変えるための「シェーダーエディター」の使い方を解説します。

シェーダーエディターとは

Blenderでは色や柄、質感を設定して作った材質をマテリアルと呼びますが、マテリアルをノードベースで直感的に編集する機能をシェーダーエディターと呼んでいます。

シェーダーエディターを開く際は、上に並んでいるタブから「Shading」を選ぶと便利です。

Shadingタブを選択

Shadingタブを選択

上画面にプレビュー、下画面にシェーダーエディターが表示されます。

Shadingタブの画面構成

Shadingタブの画面構成

もしくは、画面左上のアイコンからShader Editorを選択することでも開けます。

Shader Editorを開く

Shader Editorを開く

Blender2.79以前はノードエディターという名称でしたが、Blender 2.8以降はシェーダーエディターという名称に変わっています。

EeveeとCyclesの違い

Blenderには、EeveeレンダーとCyclesレンダーという2種類のレンダリングエンジンが搭載されています。

シーンタブの、Render EngineからEevee/Cyclesを切り替えられます。

レンダリングエンジンを選択

レンダリングエンジンを選択

Eeveeは、Blender2.8から新しく搭載された物理ベースのリアルタイムレンダリングエンジンで、レンダリング速度が圧倒的に早く、綺麗にレンダリングできます。

一方のCyclesはレンダリング速度が遅くノイズが入りやすいものの、物理的に、より正確にレンダリングできます。

ほとんど見た目に差が発生しないシェーダーもありますが、グラスBSDFというシェーダーを適用した3Dモデルで比較すると一目瞭然です。

Eevee:プリンシプルBSDF

Eevee:プリンシプルBSDF


Cycles:プリンシプルBSDF

Cycles:プリンシプルBSDF


Eevee:グラスBSDF

Eevee:グラスBSDF


Cycles:グラスBSDF

Cycles:グラスBSDF

EeveeとCyclesは共通のノードを利用していますが、Eeveeでは一部のノードは使用できません。

詳しい仕様は以下をご覧ください。

https://docs.blender.org/manual/en/latest/render/eevee/materials/nodes_support.html

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

Shadingタブを選んで、実際にシェーダーエディターを触ってみましょう。

[Shift]+[A]キーから「Mesh」→「Monkey」を追加します。

Monkeyを追加しShaderタブへ

Monkeyを追加しShaderタブへ

オブジェクトを選択しても下に何も表示されない場合、オブジェクトにマテリアルが設定されていません。

下画面上部にある「+ New」を押すとマテリアルが作成され、自動でノードが挿入されます。

新しくマテリアルを作成

新しくマテリアルを作成


デフォルトのノード

デフォルトのノード

「Material Output」のノードに「Principled BSDF」のノードが接続されています。

Material Outputノードは、必ず接続するノードです。このノードに接続されたノードが反映されます。

Principled BSDFはデフォルトのシェーダーです。Eeveeではこのシェーダーの利用が推奨されています。

ノードを接続する

まず、既に接続されているPrincipled BSDFノードを選択した状態で[X]キーで削除します。

Principled BSDFを削除

Principled BSDFを削除

ノードを新しく追加するには、[Shift+A]キーを押しメニューを開きます。

試しに、「Shader」から「Glossy BSDF」(光沢)を選択してみましょう。

Glossy BSDFを選択

Glossy BSDFを選択


ノードが追加された

ノードが追加された

追加したら、Glossy BSDF右側の「BSDF」からMaterial Outputの「Surface」に線を引くようにドラッグします。

ノード同士をつなぐ

ノード同士をつなぐ

ノードが接続され、プレビューにも反映されました!

テクスチャを接続する

シェーダーだけでは、質感以外の細かい柄などを反映させることができません。

任意の柄を追加するには、[Shift]+[A]キーを押し「Texture」から「Image Texture」を選択します。

Image Textureを追加

Image Textureを追加

Image Textureノードの「Open」から画像を選択できます。今回は以下のようなテクスチャを設定しました。

テクスチャ

テクスチャ


テクスチャが反映された

テクスチャが反映された

テクスチャが反映されました。細かく位置を合わせたい場合は、別途UV編集という作業が必要になります。

詳しくはこちらの記事をご覧ください。

シェーダーを合成する

複数のシェーダーを組み合わせることもできます。

[Shift]+[A]から「Shader」→「Mix Shader」を追加します。シェーダーを合成するための変換機となるノードです。

Mix Shaderを追加

Mix Shaderを追加

Mix Shaderノードを選択し、Glossy BSDFとMaterial Outputの間にドラッグします。

ノードとノードの間にはさむ

ノードとノードの間にはさむ

間に挟み込まれました。

続いて、合成したいシェーダーをもう一つ追加します。今回はPrincipled BSDFシェーダーを追加し、Colorをピンクにしてみました。

2つ目のシェーダーノードを追加

2つ目のシェーダーノードを追加

Principled BSDF右側のBSDFからMix Shader左側のShaderに接続します。Mix Shaderの左側のShaderに2つのシェーダーノードが接続された状態になります。

Mix Shaderに2つシェーダーがつながっている

Mix Shaderに2つシェーダーがつながっている

プレビューにも反映されました。Mix Shaderノードの「Fac」スライダーを調整すると、どちらのシェーダーノードをどのくらいの比率で反映させるかをコントロールできます。

グラデーションを使う

応用編として、グラデーションのかけ方もご紹介します。先ほどのMonkeyを削除し、新たにUV Sphereを追加します。

UV球を追加する

UV球を追加する

グラデーションを作るには、まずカラーランプというものを使います。

[Shift+A]から、「Converter」→「ColorRamp」ノードを追加し、ColorRampノードのColorとPrincipled BSDFノードのBase Colorを接続します。

ColorRampを接続

ColorRampを接続


グラデーションが反映されていない

グラデーションが反映されていない

これだけだと見た目の変化はあまりありません。グラデーションをうまく反映させるためには、「Texture」→「Gradient Texture」を追加して接続する必要があります。

Gradient Textureを接続

Gradient Textureを接続


左→右にグラデーションがかかった

左→右にグラデーションがかかった

グラデーションが反映されました。グラデーションの色合いは、ColorRampノードのつまみをクリックしたあと、カラーバーをクリックすると変更できます。

グラデーションの色を変更

グラデーションの色を変更


グラデーションの色が変わった

グラデーションの色が変わった

さらに「Vector」→「Mapping」ノードと「Input」→「UV Map」ノードを以下のように接続すると、Mappingの値を動かすことで位置合わせができるようになります。

MappingとUV Mapノードを追加

MappingとUV Mapノードを追加


RotationのXとYを90度に

RotationのXとYを90度に

×
newbview popup