PBR MAT

概要

PBR MATは、PBR(Physically Based Rendering)ライティングモデルを使ってマテリアルを作成します。テクスチャ、反射、バンプ、コーンライト、リムライト、アルファマップなどに対応しています。
また、Substance TOPに読み込まれているSubstance Designer PBRマテリアルにも対応しています。
そのGLSLシェーダを2つのDATに出力し、Output Shaderパラメータを使ってGLSL MATでさらに適応させることができます。
このOPは、割り当てられたテクスチャマップから物理ベースのマテリアルを作成し、Maya、Houdini、Unreal、Photoshopなど、あらゆるコンテンツパイプラインに対応します。
Substance TOPの章や、PBRテクスチャライブラリのサービスQuixelやPoliigonも参照してください。

パラメータ – RGB ページ
Base Color / basecolor

テクスチャのベースカラーで、ディフューズとスペキュラの計算に使用されます。

  • Red / basecolorr
  • Green / basecolorg
  • Blue / basecolorb
Specular Level / specularlevel

Specular Level Mapがマテリアルに与える影響度を設定します。

Metallic / metallic

Metallic Mapがマテリアルに与える影響度を設定します。

Roughness / roughness

Roughness Mapがマテリアルに与える影響度を設定します。スペキュラD、R、Fの計算に使用されます。(blog.selfshadow.com/publications/s2013-shading-course/karis/s2013_pbs_epic_notes_v2.pdf 3ページ目)。

Ambient Occlusion / ambientocclusion

Ambient Occlusion Mapがマテリアルに与える影響度を設定します。アンビエントオクルージョンは、Environement Light COMのライティング結果に影響します。

Env Light Quality / envlightquality

Environment Lightのマテリアルとのサンプリング品質を設定します。

Emit / emit

光がない状態でも発光する色を設定します。

  • Red / emitr
  • Green / emitg
  • Blue / emitb
Constant / constant

最終色に追加します。ポイントカラーがある場合、finalcolor += Point Color * Constant Colorとなります。これは、1 1 1 の環境照明があるように動作します。テクスチャや透明度の影響は受けません。

Polygon Front Faces / frontfacelit

ポリゴンの法線を使って、ポリゴンの表面をどのようにライティングするかを設定します。詳しくは、詳しくは、Tow-Sided Lighting の章を参照してください。

  • Use Per-Light(s) Parameter / uselight
  • Front Lit / frontlit
  • Back Lit / backlit
Polygon Back Faces** / backfacelit

ポリゴンの法線を使って、ポリゴンの裏面をどのようにライティングするかを設定します。詳しくは、Tow-Sided Lighting の章を参照してください。

  • Use Per-Light(s) Parameter / uselight
  • Front Lit / frontlit
  • Back Lit / backlit
Output Shader… / outputshader

このボタンを押すと、このPBR MATが現在使用しているシェーダーコードを含むGLSL MATとText DATを作成するダイアログが表示されます。シェーダはライトの数とタイプに依存するので、現在のシステムで使用されているライティング構成に基づいて、いくつかの可能な異なるシェーダの選択肢がリストアップされます。シェーダーがダイアログに表示されない場合は、TouchDesignerの現在のセッションでシェーダーがレンダリングされていないことを意味します。Phong MATのビューアをオンにするか、レンダリングTOPでレンダリングをセットアップします。そうすると、いくつかのシェーダーが作成/コンパイルされ、リストが入力されます。例えば、シャドウマッピングを行うシェーダーを見たい場合は、シャドウマッピングを行うレンダリングをセットアップすると、リストに表示されます。

パラメータ – Maps ページ
Substance TOP / substance

.sbsarファイルを含むSubstance TOPを参照します。TOPを参照すると、以下のテクスチャマップを手動で記入しなくても、有効なすべてのテクスチャが自動的に解凍されます。テクスチャマップのパラメータが手動で入力されていると、.sbsarパッケージから自動的に引き出されたテクスチャが上書きされます。

Base Color Map / basecolormap

マップフィールドの右側にある矢印をクリックすると、カラーマップのテクスチャサンプリングパラメータが表示されます。以下の他のMapパラメータも同様に、それぞれのTexture Sampling Parameterを持っています。
共通 Texture Sampling パラメータの章を参照してください。

Specular Level Map / specularlevelmap

スペキュラレベルマップを設定します。
共通 Texture Sampling パラメータの章を参照してください。

Metallic Map / metallicmap

メタリックテクスチャマップを設定します。これは、Substance DesignerのMetallicマップに相当します。
共通 Texture Sampling パラメータの章を参照してください。

Roughness Map / roughnessmap

ラフネステクスチャマップを設定します。これは、Substance DesignerのRoughnessマップに相当します。
共通 Texture Sampling パラメータの章を参照してください。

Ambient Occlusion Map / ambientocclusionmap

アンビエントオクルージョンテクスチャマップを設定します。これは、Substance Designer のアンビエント・オクルージョン・マップに相当します。アンビエントオクルージョンは、Environement Light COMPからのライティングに影響を与えます。
共通 Texture Sampling パラメータの章を参照してください。

Normal Map (Bump) / normalmap

TOPsのノーマルマップを使用して、バンプマップ効果を作り出します。バンプマップは、サーフェスのバンプやシワをシミュレートして、凹凸効果を与えるものです。この機能を使用するには、ジオメトリにタンジェントアトリビュートが作成されている必要があります(T[4])。これらは Attribute Create SOP を使用して作成します。
共通 Texture Sampling パラメータの章を参照してください。

Bump Scale / bumpscale

Normal Mapパラメータで作成されたバンプの倍率を設定します。

Enable Height Map / heightmapenable

ハイトマップを有効にします。

Height Map / heightmap

ハイトテクスチャマップを設定します。これは、Substance DesignerのHeightマップに相当します。ハイトマップは、パララックスマッピングを行うために、ノーマルマップと組み合わせて使用します。
共通 Texture Sampling パラメータの章を参照してください。

Parallax Scale / parallaxscale

ハイトマップに適用されるスケール値。効果を大きくしたり、誇張したりするのに使用できます。

Parallax Occlusion / parallaxocclusion

視差オクルージョンを有効にします。これは、ハイトマップで使用される視差マッピング技術の強化です。視差オクルージョンは、視差マッピングのテクスチャオフセットの品質を向上させ、ハイトマップの高い部分が低い部分を遮っているように見えるため、高さの錯覚が起こりやすくなります。

Displace Vertices / displaceverts

上記の Enable Height Map が On の場合、Displace Vertices を On に設定すると、Height Map テクスチャと以下のパラメータに基づいてジオメトリの頂点が変位する、真のディスプレイスメントマッピングが有効になります。

Displace Scale / displacescale

置換量の倍率を設定します。

Displace Midpoint / displacemid

ディスプレイスメントマップの中間点を、ディスプレイスメントエフェクトの開始位置として設定します。

Emit Map / emitmap

マテリアルのEmitカラーパラメータと乗算されるTOPテクスチャを設定します。オブジェクトはテクスチャ座標を持っている必要があります。このマップのアルファは無視されます。
共通 Texture Sampling パラメータの章を参照してください。

パラメータ – Alpha ページ

注意:オブジェクトにアルファを適用しただけでは、透明にはなりません。詳しくはTranceparencyの項目を参照してください。

Alpha Map / alphamap

このマップは、オブジェクトのアルファを乗算します。マップのredチャンネルを使用し、他のチャンネルは無視されます。
共通 Texture Sampling パラメータの章を参照してください。

Uniform Alpha / alphamode

これをオフにすると、各ポリゴンの法線のカメラに対する向きに応じて、アルファ値が変化します。カメラに向かっている法線は、ポリゴンのアルファ値が Alpha Front になります。カメラに対して垂直な方向(横や上下を向いている)の法線は Alpha Side になります。

Alpha Front / alphafront

マテリアルの不透明度を指定します。このパラメータには、オブジェクトのポイントアルファが掛けられます(他のアルファソースも同様)。

Alpha Side / alphaside

これは、不均一なアルファに使用されます。 カメラの反対側を向いているポリゴンが取得するアルファ値です。

Alpha Rolloff / rolloff

Alpha Front から Alpha Side へのアルファの変化をコントロールします。

Post-Mult Color by Alpha / postmultalpha

すべての計算の最後に、カラー(RGB)に計算されたアルファが乗算されます。このチェックボックスをオフにすることで、この現象を防ぐことができます。

Mult Alpha by Light Luminance / alphamultlight

この機能を有効にすると、照明の輝度にアルファ値が乗算され、輝度が減少/増加します。

パラメータ – Rim ページ

他のリムライトもパラメータは同じで、内部のパラメータ名が1ではなく違う数字になっているだけです。

Enable Rim Light 1 / rim1enable

このリムライトを有効にします。

Rim Color Map / rim1map

このマップでは、計算されたリムライトの色が複数になります。
共通 Texture Sampling パラメータの章を参照してください。

Rim Color / rim1color

リムライトの色を設定します。

  • Red / rim1color
  • Green / rim1colorg
  • Blue / rim1colorb
Rim Center / rim1center

360度の円上のどこかに位置する、リムライトの中心となる場所を設定します。

Rim Width / rim1width

リムライトがセンターからどれだけ離れているか設定します。

Rim Strength / rim1strength

リムライトの明るさを調整します。

Rim Strength Ramp / rim1strengthramp

水平方向のランプを設定して(v = 0.5でテクスチャをサンプリングします)、リムライトの強さをコントロールすることができます。

パラメータ – Advanced ページ
Shadow Strength / shadowstrength

このパラメータは、影の中にいることで照明の色がどの程度変化するかを制御します。1の場合、オブジェクトは影の色のパラメータを受け継ぎ、0の場合は影があっても影がないかのように振る舞います。

Shadow Color / shadowcolor

影の部分に使用される色を設定します。

  • Red / shadowcolorr
  • Green / shadowcolorg
  • Blue / shadowcolorb
Darkness Emit / darknessemit

Phong MATは、ライト、リムライト、エミッションなどを考慮した上で、オブジェクトの現在の色の明るさを計算します。そして、この明るさ(0~1の間)を使用して、ダークネス・エミット・カラーをフェードインします。エリアが暗いほど、ダークネス・エミット・カラーが多く適用されます。

Darkness Emit Color / darknessemitcolor

暗くなっている部分に使用される色を設定します。

  • Red / darknessemitcolorr
  • Green / darknessemitcolorg
  • Blue / darknessemitcolorb
Darkness Emit Map / darknessemitmap

このマップは、Darkness Emit Colorを乗算します。このマップのアルファは使用されません。
共通 Texture Sampling パラメータの章を参照してください。

Write Camera Space Depth to Alpha / writecameradepthtoalpha

これにより、ピクセルのカメラ空間深度が、出力TOPのアルファチャンネルに書き込まれます。この値は後処理に便利ですが、もちろん、これをオンにすると、すべてのアルファ計算の結果は得られません(ただし、Post-Mult Color by Alphaが有効になっている場合は、出力色を乗算するために使用されます)。

Apply Point Color / applypointcolor

通常はSOPから送られてくるカラーアトリビュート(Cd[4])をライティング計算に使用しますが、このパラメータのチェックを外すことでカラーアトリビュートの使用をオフにすることができます。

Instance Texture / instancetexture

Geometry COMPでインスタンスごとのテクスチャを設定する場合、このパラメータはインスタンスのテクスチャがどのマップとして適用されるかを設定します。

  • Base Color Map / basecolormap
  • Normal Map / normalmap
  • Emit Map / emitmap
  • Alpha Map / alphamap
  • Darkness Emit Map / darknessemitmap
  • Rim 1 Color Map / rim1map
Color Buffer 1 RGB / colorbuffer1rgb

法線やエミットカラーなどを、1つのパスで異なるRender TOPカラーバッファに送ることができます。

  • Zero / zero
  • One / one
  • World Space Position / worldspaceposition
  • World Space Normal / worldspacenormal
  • Camera Space Position / cameraspaceposition
  • Camera Space Normal / cameraspacenormal
  • Point Color / pointcolor
  • Texture Coord 0 / texturecoord0
  • Normal Map / normalmap
  • Emit Map / emitmap
  • Emit Color / emitcolor
  • Specular Level Map / specularlevelmap
  • Metallic Map / metallicmap
  • Roughness Map / roughnessmap
  • Ambient Occlusion Map / ambientocclusionmap
  • Final Diffuse Color / finaldiffcolor
  • Final Specular Color / finalspeccolor
  • Shadow Strength / shadowstrength
  • Normalized Shadow Strength / normalizedshadowstrength
パラメータ – Deform ページ

参照:共通 Deform ページ

パラメータ – Common ページ

参照:共通 Common ページ