Blenderシェーダーノード辞典/カラーランプ(Color Ramp)
※記事製作時のバージョン:Blender 3.4
⇒ Blenderシェーダーノード辞典/目次
概要
カラーランプは、黒~白のグラデーションを元に、別のパターンのグラデーションに変換するノードです。
※ramp:(高さの異なる二つの道路・建物の階などをつなぐ)斜道、傾斜路
カラーランプが初期状態の場合、入力したグラデーションは変化せず、そのまま出力されますが・・・
カラーランプの設定により、任意のパターンのグラデーションに変換することができます。
カラーランプのグラデーションは、カラーストップを使って設定します。
カラーストップは、グラデーション変化の基準点です。
カラーストップごとに位置とカラーを設定すると、その間の色変化が補間され、最終的なグラデーションができあがります。
なお、カラーランプへの入力は、色のついたテクスチャも使えます。
ただし変換前と変換後の関係がつかみにくくなるので、基本的にグレースケールテクスチャを元にした方が操作が簡単です。
基本操作
カラーストップの追加
[+]を左クリックすると、その時選択しているカラーストップの左側に、カラーストップが追加されます。
※一番左のカラーストップを選択している場合は、その右側に追加されます。
また、カラーバンド(グラデーションの表示部分)の上で[Ctrl+左クリック]すると、クリックした場所にカラーストップを追加できます。
カラーストップの削除
[-]を左クリックすると、その時選択しているカラーストップが削除されます。
※カラーストップが最後の1つの場合は削除できません。
カラーストップの選択
カラーストップを左クリックすると、そのカラーストップがアクティブ(選択状態)になります。
アクティブなカラーストップは、△部分が明るいグレーになり、上に点線が表示されます。
カラーバンドの左下には、アクティブなカラーストップの番号が表示されます。
※カラーストップは、左から順に[0,1,2,3…]と番号が振られます。
この数値を直接操作して、その番号のカラーストップをアクティブにすることもできます。
カラーストップが混み合って、クリックで選択しにくい場合などに便利です。
カラーストップの移動
カラーストップは、左ドラッグで自由に移動できます。
カラーバンドの右下には、アクティブなカラーストップの位置が表示されます。
カラーバンドの左端が[0]、右端が[1]になります。
この数値を直接操作して、そのカラーストップの位置を設定することもできます。
色の設定
カラーには、アクティブなカラーストップの色が表示されます。
通常のノードと同じく、カラーを左クリックするとカラーピッカーが表示され、アクティブなカラーストップの色を設定できます。
アルファを使った設定
アルファは、色の不透明度を表す値です。
1.0:完全に不透明(不透明度 100%)
0.0:完全に透明(不透明度 0%)
となります。
カラーストップのアルファを設定すると、「だんだん透明になる」というような、色の透過性が変化するグラデーションを作ることができます。
カラーストップの出力には、カラーとアルファがあります。
カラー出力は、アルファの含まれない色データだけを出力します。
アルファ出力は、アルファ値のデータだけを出力します。
※アルファ値のデータは、そのまま見るとただの白黒テクスチャになります。
透過性が変化するマテリアルを作るには、プリンシプルBSDFまたは透過シェーダーを使って、次のように設定します。
プリンシプルBSDFを使った設定
アルファ出力を、プリンシプルBSDFの[アルファ]に接続します。
カラー出力は、作りたい質感に合わせた[カラー]に接続します。
透過シェーダーを使った設定
シェーダーミックスの第1シェーダーに、透過シェーダーを接続します。
第2シェーダーは、作りたい質感に合わせたシェーダーを接続します。アルファ出力を、シェーダーミックスの係数に接続します。
カラー出力は、作りたい質感に合わせた[カラー]に接続します。
EEVEEでの透過表現について
EEVEEの場合、初期状態のままでは透過は描画されません。
EEVEEで透過を描画するには、専用の設定をする必要があります。
詳しい設定方法については、私のブログ『プリンシプルBSDFのアルファについて』を参照してください。
カラーモード
カラーランプが色を計算するための方式を選択するパラメーターです。
RGB、HSV、HSLの3種類があり、それぞれ色変化の基本パターンが変化します。
各方式の特徴は次のようになります。
RGB(Red・Green・Blue)
色を赤・緑・青の要素に分解する方式です。
シンプルに2色が混ざり合う、標準的な色変化になります。HSV(Hue・Saturation・Value)
色を色相・彩度・明度の要素に分解する方式です。
RGBに比べて色彩が豊かで、鮮やかな色変化になります。HSL(Hue・Saturation・Lightness)
色を色相・彩度・輝度の要素に分解する方式です。
HSVとよく似ていますが、[有彩色 ⇔ 黒]のグラデーションで、異なる変化になります。
RGBとHSV/HSLの違いと使い分け
下の画像は、カラーピッカーを
赤[R:1、G:0、B:0]と
緑[R:0、G:1、B:0]に設定した見本です。
RGBはグラデーションの中間で色が暗く(R:0.5、G:0.5、B:0)なりますが、HSV/HSLでは明るさの変わらない鮮やかなグラデーションになります。
別の見本として、カラーピッカーを
赤[R:1、G:0、B:0]と
水色[R:0、G:1、B:1]にすると、下の画像のようになります。
RGBは中間で彩度を失いグレー(R:0.5、G:0.5、B:0.5)になりますが、HSV/HSLでは彩度と明度を保ったまま[赤 ⇒ オレンジ ⇒ 黄 ⇒ 緑 ⇒ 水色]という変化をします。
このように、RGBとHSV/HSLは根本的に異なる色変化になります。
基本的にはRGBを使う方が、色変化が感覚的に理解しやすく、扱いやすいです。
色鮮やかなグラデーションや、虹色などの特殊な色変化を作る場合はHSV/HSLを使います。
[有彩色 ⇔ 黒]のグラデーション
[有彩色 ⇔ 黒]のグラデーションでは、各カラーモードで次のような違いがあります。
RGB:有彩色から、そのまま黒に変化します。
HSV:中間で明るいグレーになります。
HSL:中間で暗いグレーになります。
それぞれに特徴があるので、作りたい色変化と状況に合わせて使い分けます。
HSV/HSLの注意点
HSV/HSLで[有彩色 ⇔ 黒・白]のグラデーションを作る場合、注意点があります。
[赤 ⇔ 黒・白]の場合は問題ありませんが・・・
赤以外の色の場合、下の画像のように、グラテーションの中間部分でおかしな色変化が発生します。
これは、黒や白が「彩度0の赤(色相:0)」と扱われるためです。
上の画像の場合、中間部分で[水色 ⇔ 赤]の色相変化が生じています。
これを防ぐには、次のように設定します。
【1】黒(白)にしたいカラーストップのカラーを、もうひとつのカラーストップと同じ色にします。
【2】彩度を[0]にならない範囲で小さくします。
【3】明度(輝度)は、次のように設定します。
・黒にする場合:[0]にならない範囲で小さくします。
・白にする場合:[1]
これで黒(白)のカラーストップの色相が保たれ、色相変化の生じないグラデーションができます。
※彩度または明度(輝度)を[0]にすると、色相がリセットされて[0](赤)になるので、注意してください。
色の補間
カラーストップの間で、色を補間する方式を選択するパラメーターです。
この方式により、最終的なグラデーションのパターンが変化します。
カラーモードがRGBの場合、イーズ、カーディナル、リニア、Bスプライン、一定の5種類があります。
カラーモードがHSV・HSLの場合、接近、最遠、時計回り、反時計回りの4種類があります。
カラーモードがRGBの場合
リニア(Linear)
直線的に値が変化する方式です。
最も癖のない、標準的な色変化になります。
イーズ(Ease)
アニメーションFカーブの[加速 ⇔ 減速]のように値が変化する方式です。
リニアに比べ、「カラーストップで設定した色の幅」が広くなります。
(その分「中間の色の範囲」は狭くなります。)
カーディナル(Cardinal)
全体が滑らかな曲線になるように値が変化する方式です。
リニアとイーズの中間くらいの色変化になります。
Bスプライン(B-Spline)
カラーストップを結んだ直線の内側を通る曲線を描いて値が変化する方式です。
・隣り合う色の境界が大きくぼやけて混ざり合う
・彩度と明度のピークが抑えられて、淡い色合いになる
という特徴があります。
一定(Constant)
次のカラーストップまで、一定の値を取る方式です。
グラデーションではなく、くっきり変わる色変化になります。
カラーモードがHSV・HSLの場合
HSV・HSLでの色の補間は、色相環の変化方向を設定します。
※この設定に関わらず、色相・彩度・明度(輝度)の値は常に[リニア]で変化します。
接近(Near)
常に最短距離で色相が変化します。
最遠(Far)
常に最長距離で色相が変化します。
時計回り(Clockwise)
常に時計回りで色相が変化します。
反時計回り(Counter-Clockwise)
常に反時計回りで色相が変化します。
その他の操作
[∨]マークのメニューから、以下の操作ができます。
カラーランプを反転(Flip Color Ramp)
カラーストップの位置を逆にして、グラデーションの向きを反転します。
ストップを左から配置(Distribute Stops from Left)
すべてのカラーストップの右側に同じスペースができるように、カラーストップを配置します。
色の補間が[一定]で、カラーバンドを均等に分割したい場合に使用します。
ストップを均等に配置(Distribute Stops Evenly)
すべてのカラーストップの間が均等になるように、カラーストップを配置します(先頭と末尾のカラーストップは両端に、残りは等間隔で配置)。
色の補間が[一定]以外で、カラーバンドを均等に分割したい場合に使用します。
スポイト(Eyedropper)
[スポイト(Eyedropper)]を選択した状態で任意の場所を左ドラッグすると、ドラッグしたライン上の色変化を取得できます。
※ショートカット:カラーバンド上で[E]キー
※スポイトを使用する前の設定はすべて消去され、スポイトで取得した色設定に置き換えられます。
スポイトは、Blenderの画面内ならば、どのエリアの色でも取得できます。
上の画像のように画像テクスチャを表示しておいて、そこから色を取得するといった使い方もできます。
なお、上の見本では色の補間が[リニア]なのに、スポイトを使用した後のカラーバンドは[一定]のような状態になっています。
これは、色変化の境界で2つのカラーストップが重なるように取得されているためです。
試しに、上の見本から[ストップを均等に配置]を行うと、重なり合ったカラーストップが分かれて、下図のように分配されます。
このように、スポイトを使う場合は次の点に注意が必要です。
思わぬところでカラーストップが重なっていたりする
カラーストップのカラーや位置は、そのまま使えるとは限らない
スポイトで取得したカラーストップは、用途や状況に合わせて、手動での整理・調整が必要になります。
カラーランプをリセット(Reset Color Ramp)
カラーランプを初期状態に戻します。
【使用した3Dモデル】
Material ball in 3D-Coat - Download Free 3D model by 3d-coat (@3d-coat) [a6bdf1d] - Sketchfab is licensed under Creative Commons Attribution
よろしければサポートお願いします。いただいたサポートは次の記事の制作費になります。