プリンシプルBSDFで異方性反射の使い方(5)/応用と補足と余談
※記事製作時のバージョン:Blender2.92
プリンシプルBSDFで、いろいろな質感表現の方法を探っていくシリーズ。
第18回は異方性反射の使い方その5です。
今回の記事では応用と補足と余談として、いろいろ雑多な解説をします。
異方性反射の記事は全部で5つあります。
(リンクから各記事にジャンプします)
- 旋盤加工の作り方
- ヘアライン加工の作り方
- スピン加工の作り方
- 異方性反射の基礎知識
- 応用と補足と余談(この記事)
異方性の応用
布の異方性反射
光沢のある布は、異方性を設定するとリアルな質感になります。
これは繻子(しゅす)織りという織り方で、縦糸か横糸のどちらかだけが表から見えるように織られます。
それがヘアラインと同じ働きをして、異方性反射が生じます。
布のタンジェントは、タンジェントノード > タイプ:UVマップ で設定します。
クロスシミュレーションをする場合は、シミュレーションの前にUVを展開しておきます。
布の作り方についての詳細は、こちらの記事を参照してください。
異方性反射で立体感を出す
グラデーションのかかったテクスチャを元に異方性の回転に変化を付けると、立体感のある異方性反射が作れます。
下の動画はライトを回転させているだけですが、波打つような浮き上がるような、不思議な立体感になります。
リングスピン模様に対して設定すると、本当に金属の輪が並んでいるような立体感になります。
プロシージャルテクスチャを使った設定
異方性の回転やタンジェントは、プロシージャルテクスチャで設定することもできます。
こちらは、ノイズテクスチャでタンジェントを設定した見本です。
上の動画は、
- Emptyの座標を元に、ノイズテクスチャでタンジェントを設定する
- Emptyを下に動かす
という手法で、タンジェントをアニメーションさせています。
このようにプロシージャルテクスチャを使うと、テクスチャアニメーションが簡単に作れます。
※テクスチャアニメーションの作り方についての詳細は、こちらを参照してください。
Cyclesで雨降りの作り方【Blender講座】 - 灰ならしのイラスト - pixiv
Blenderで雨降りの作り方【講座の補足】 - 灰ならしのイラスト - pixiv
下の画像は同じノイズテクスチャで、異方性は使わずに普通のノーマルマッピングで擬似凹凸を付けただけの場合との比較です。
異方性を使うと、このようなギラギラした反射が作れます。
ノイズ以外のテクスチャでも、いろいろ面白い模様や効果を作ることができます。
タンジェント設定時の注意点
タンジェントは、ハイライトが伸びる方向をベクトル(X , Y)で指定します。
このベクトルが (0 , 0) の場合、ハイライトはどの方向にも伸びないことになり、異方性が正しく設定できません。
次のような場合、タンジェントのベクトルが (0 , 0) になります。
- ノーマルマップを流用する場合
⇒ ベイクの元オブジェクトが無い部分 - バンプマップ(ハイトマップ)を流用する場合
⇒ テクスチャの明度が一定で、変化の無い部分
カーボンファイバークロスの作り方
カーボンファイバークロスは、炭素繊維を布状に織った素材です。
(以下「カーボンファイバー」と略します)
炭素繊維のくっきりした織目から生じる、異方性を伴った立体的な光沢が特徴です。
画像出典:炭素繊維複合材 | K.SAKAI NEW PRODUCTS
カーボンファイバーの質感は、ヘアライン加工を応用して作ります。
まず、下のテクスチャ(3枚)を[右クリック > 名前を付けて保存]でダウンロードします。
ファイル名を、左から順に
に変更します。



1. carbonfiber_anisoRot.png を元に、異方性の基本設定をします。
この段階では立体感の無い、ただのギザギザ模様になります。
※炭素繊維は材質的には非金属ですが、光沢が強い方がそれらしくなるので、メタリックを 1.0 にします。
2. carbonfiber_height.png を元に、バンプマッピングで立体感を追加します。
また、ベースカラーにも変化を付けて、織目が下に潜り込む部分の色を暗くします。
※メタリックが 1.0 なので、ベースカラーが暗い部分は光沢も弱くなります。
3. carbonfiber_hairline.png を元に、炭素繊維のディテールを追加して完成です。
コントラストや光沢が強すぎると感じる場合は、メタリックを 0.0 にします。
その際はスペキュラーマッピングを追加して、織目が下に潜り込む部分の光沢を消します。
スペキュラーマッピングについての詳細は、こちらの記事を参照してください。
表面を透明樹脂でコーティングした質感にする場合は、クリアコートを追加します。
クリアコートについての詳細は、こちらの記事を参照してください。
補足:プリンシプルBSDFではできないこと
CDの虹色は作れない
CDやDVDは、見る角度や光の当たり具合によって、反射光が虹色に変化します。
この色変化は光の回折と干渉によるもので、「構造色」と言います。
プリンシプルBSDFでは、反射光の色を任意に変更できないので、構造色は表現できません。
こういう表現を作る場合は、異方性ノードを使います。
異方性ノードは、異方性反射を単体で設定するためのノードで、反射光の色を任意に設定できます。
Cycles限定で、EEVEEでは使えません。
回転とタンジェントの使い方は、プリンシプルBSDFと同じです。
ただし、プリンシプルBSDFと異方性ノードでは、同じタンジェントに対するハイライトの伸びる方向が 90° 異なります。
ハイライトの伸びる方向をプリンシプルBSDFと同じにするには、異方性ノードの回転の値に 0.25 を足して補正します(引いてもOK)。
ヘアラインを重ね合わせることはできない
現実のヘアライン加工では、異なる方向のヘアラインを重ね合わせることで、複雑に浮き上がるような模様を作る事ができます。
プリンシプルBSDFも異方性ノードも、1箇所に設定できるタンジェントは1方向だけなので、残念ながらこの表現はできません。
ひょっとしたら、複数のプリンシプルBSDF(または異方性ノード)をミックスしたら作れるかも知れませんが、未確認です。
余談:水面に発生する異方性反射
海に映る朝日や夕日が伸びて見えるのも、異方性反射によるものです。
これは水面の波が原因です。
水面を人の目線くらいの高さから見ると、波のへこんでいる部分が波自体によって隠され、波頭の部分だけが横に並んで見えるようになります。
これがヘアラインと同様の働きをして、異方性反射が生じます。
旋盤加工やヘアライン加工など、固定のヘアラインから生じる異方性反射では、ヘアラインに直交する方向にハイライトが伸びます。
水面の異方性反射はそれとは異なり、常に視点方向にハイライトが伸びます。
水面に限らず、凹凸のある表面では同様の現象が発生します。
大抵の物質の表面には大なり小なり凹凸があるので、横方向の角度からだとハイライトが伸びるように見えます。
この現象は、反射光を伴うシェーダーでは標準で表現されます。
以上、応用と補足と余談でした。
※添削・構成アドバイス:相方
参考サイト
ao;eth on Twitter : 異方性シェーダーはCDにも使えると...
カーボンファイバーの作り方は、こちらの2つの動画を参考にしました。