ラベル Specular の投稿を表示しています。 すべての投稿を表示
ラベル Specular の投稿を表示しています。 すべての投稿を表示

2024年10月11日金曜日

[Arnold]シェーダーパラメーター・Specular初級編

ArnoldのAi Standard SurfaceのSpecular(鏡面反射)の項目に関してまとめてみました。今回は初級編ということでパラメーターの紹介をしていこうと思います。

Ai Standard SurfaceのSpecularの項目

6項目ありますが極端な話


Roughness以外一旦放置して大丈夫です。
もちろん作成する質感によって調整することはありますが、必要になったら調整する
という考え方がいいと思います。
なんとなくでいじると物理法則から簡単に外れてしまうので根拠をもって調整しましょう。

それでは上から見ていきましょう。

Weight


鏡面反射の強度の調整をできます。
これは基本的に1のままにします。
物質の表面が光を反射するとき、その強度は場所によって変わらず一定であり、鏡面反射のハイライトの強弱はWeightではなく、Roughnessによる表面の細かい凸凹で再現されるべきです。
物理的に正しくない形状の補完(モデリングの省略をした場合)使うこともあります。
例えば人間キャラの鼻や喉の奥がふさがってるのが鏡面反射でばれてしまうのを防ぐために奥の部分はマップを書いて0にすることもあります。


Color


これは特殊な物質を表現するとき以外は白です。
鏡面反射に色がつくものは金属、一部の構造色をもつとされる物質、サテン、ベルベットのような布地等です。
多くのものはライトの光の色をそのままに返しますので白が物理的に正しいです。


Roughnes


物質の表面のザラザラ、ツルツル感を表現します。
これはBumpよりも更に細かい凸凹になります。
数値を上げるほど表面がザラザラになり、鏡面反射が拡散され、弱くなるように見えます。
上記のWeightの項目で書いた通り、鏡面反射の見た目的な強弱はこのパラメーターで調整するべきです。
Roughnessは物質ごとの決まった値は無く、表面処理を再現するものです。
PBR環境においてアーティストが唯一自由に扱える項目と言えるかもしれません。
腕の見せ所です!


IOR


Index of Refractionの略です。日本語で屈折率と呼ばれます。
物質の測定値がだいたいのもので出ているので、再現したい物質の測定値を調べて入れてあげるとよりリアルになります。
しかし、その情報が間違えている場合変な見ためになってしまうこともあるので慎重になるべきです。
プラスチック、塗装、陶器、ゴム等の絶縁体の際は数値で悩むくらいであれば既定値の1.5のままにしてしまうのが無難でしょう。
このIORはTransmision(屈折)にも影響を与えます。
透過物を作成の際は数値でかなり見ためが変わるので、これも気を付けて数値を設定する必要があります。

Anistoropy


異方性反射を再現するのに使います。
金属のブラシ表現、サテン等の布の表現などで使ったりします。

こんな金属の平面を

こんな感じの金属の鍋の底面みたいにすることができます。

詳しい使い方は他の記事で紹介します。


Rotation


異方性反射の方向を制御します。
異方性反射はUVベースで方向がきまり、それを回転させることができます。
なので、同じ方向に延びてほしいもののUVは同じ方向にそろえる必要があります。
ちなみに上の例の画像はこのRotationにRampテクスチャが入っています。

まとめ


これにて初級編は終了です。
Specularはどんなアセットでも調整が必要なパラメーターの一つだと思います。
しっかりコントロールして、良いSpecularの出るアセットが制作できるといいですね。
中級編に続きます!

2024年7月10日水曜日

[PBR]PBRマテリアルのSpecularRoughness初級編

Arnoldに限らず近年(2024年現在)のPBRマテリアルではSpecular(鏡面反射)のコントロールパラメーターとしてRoughnessが実装されてることが多いです。

今回はそのRoughnessの使い方について説明します。

この記事で紹介するRoughnessはSpecular Roughness、つまりSpecularのコントロールをするパラメーターの説明になります。

DiffuseやTransmissionにもRoughness(粗さ)をコントロールするパラメーターがありますがそれはまた別の機会に。

Specular Roghnessとは

Roughnessは名前の通り表面の粗さを表現するためのパラメーターです。

身近なものでも表面の荒さが違うものは多いですよね。

上の写真はこのブログを見てくださってる多くの方にはなじみ深いであろうペンタブのペンです。

これは室内で撮った写真です。

グリップの部分は電灯の光が柔らかく拡散し、上部のほうがはっきりとハイライトが映り込んでるように見えますね。

この表面処理の違いだったり、凹凸をほぼ感じない細かい傷などはRoughnessで再現するといいと思います。

それではRoughnessの動きを見てみましょう。

パラメーターによる見ための変化

上の画像は左がRoughness0、右が1で徐々に数値が変わっていくように設定しています。

左の方がツルツルで、右に行くほどザラザラになって鏡面反射がボケていくのがわかると思います。

これはもちろん金属でも同じように動きます。

上の画像はRoughnessの設定は緑のシェーダーボールと同じでMetalnessとBase Colorを変更し金属(クロームのようなもの)に設定したものです。

どちらもSpecularの具合が変わっていくのがわかるかと思います。

Bump,Normalとの使い分け

表面のザラザラ感と言われるとBump,Normalと何が違うの?って思う方もいるかと思います。

使い分けの例を見てみましょう。

上の画像は引っ掻き傷をそれぞれNormalとRoughnessで付けてみたものです。

一枚目がNormal、二枚目がRoughnessです。

傷の深さが違うのがわかると思います。

使い分けは例えば指先でそれに触った時に凸凹を感じるならBumpかNormal、感じないけど周りと質感が違う場所はRoughnessといった感じでするといいと思います。

Roughnessの設定を楽しもう!

PBR(物理ベースのレンダリング)において一番アーティストの自由度があるのがRoughnessと言われています。

腕の見せ所ですね!

Roughnessマップで鏡面反射をしっかりコントロールして質感設定を楽しみましょう!!

以上がSpecular Roughnessの初級編になります。

中級編ではSpecularのコントロールをなぜRoughnessでするべきなのか、Roughnessが実際どのようにモデルの表面に作用してるのか解説できればと思っています。

おまけ:Glossinessについて

SpecularをRoughnessではなくGlossinessでコントロールするマテリアルもあります。

Glossinessとは表面のツルツル具合を表すパラメーターです。

なので、Roughnessを反転(Invert)した数値で同じような結果を得られます。

Substnace PainterではRoughnessチャンネルで作業してもExportの設定をしてあげることでGlossinessに自動変換してくれます。

最近あまり聞きませんが、Glossinessと出会ってもビビらずに対応していきましょう!