メタル(金属)に対する
フレネル効果
の作業手順とラフネスマップを使用した手順を記述します。
- 「Specular tab」において、Glossness mapを持っている場合、このマップはRoughness mapの反転であるため、"Invert roughness image"を有効にして使用します。
- Gloss mapが黒色に近い場合は無視して下さい。ただし、非常に金属質なサーフェスを持っている場合は異なる取り組みをする必要があります。
- Albedo map、またはBase colour mapを持っている場合は、非メタル(すなわち、ほとんどのマテリアルがそうである誘電体)の場合、"Diffuse colour"として割り当てます。メタルの場合は、"Reflectivity"として割り当てます。
非メタルサーフェスの作業手順
- "Diffuse colour"を白(1)に設定します。Albedo mapを"Diffuse colour image"に割り当てます。
- "Reflectivity"を白(1)、"Reflection tint"を白(1)に設定します。"index of refraction(屈折率)"をデフォルト値1.5で使用する事が出来ます。
- "Roughness"を1.0に設定します。次に、Roughness mapを"Roughness image"に割り当てるか、別の『Image Map Shader』を使用してRoughness mapを読み込み、その『Image Map Shader』を"Roughness function"として関連付けます。『Image Map Shader』を使用している場合は、「Colour」タブの"Data is linear"オプションを試してみると良いかもしれません。『Image Map Shader』の"Rrojection type"を必ず「Object UV (if available)」に設定し、"Repeat X"と"Repeat Y"を有効にして問題を回避して下さい。
Roughness mapの代わりにGlossiness mapがある場合、そのGlossiness mapを"Roughness image"に割り当てて、"Invert roughness image"を有効にする事で利用可能となります。
メタルサーフェスの作業手順
- "Diffuse colour"を黒(0)に設定します。これが重要です。
- "Reflectivity"を1にしてテクスチャマップを無し、"Index of refraction"を10に設定して、サーフェスの反射率を高くします。
- Albedo mapを"Reflectivity image"に割り当てます。
- "Roughness"を1に設定します。別の『Image Map Shader』を作成して、Roughnessを読み込みます。次に、『Image Map Shader』を『Default Shader』の"Rroughness function"に接続します。『Image Map Shader』の投影モードを「UV (if available)」に設定し、予期せぬ事態を避けるために、"Tile X"と"Tile Y"を有効にします。
- 『Default Shader』の直下に『Reflective Shader』を追加します(『Default Shader』は、『Reflective Shader』の"Main input"に入力する必要があります)。"Roughness"を1に設定し、『Default Shader』に対して行ったのと同じ"Rroughness function"に接続します。『Reflective Shader』を使用する理由は、入射角度において最大1の反射傾斜を作り出してフレネル効果を追加するためです。現実の世界では、これは暗く着色された金属でも起こります。この効果が得られない場合、エッジがあまりにも暗く見えるかもしれません。
異なる値を持つメタルマップがある場合、実際には2つのマテリアルを混合し、メタルマップを"Mix controller"として使用する必要があります。『Merge shader』を使用してミキシングを行い、"Mix controller"パラメータの入力を利用する事が出来ます。大部分の自然な
オブジェクトでは、メタルは黒(0)にする必要があるため、これを行う必要はありません。
ラフネスとグロスに関する注意事項:
前述したように、グロスは基本的にラフネスの反転です。しかし、0と1の間で異なるマッピングを使用する場合、レンダラー間で矛盾が生じる可能性があります。これらの違いを説明するために、シェーダーにさらにオプションを追加して画像のガンマ/色空間を制御する予定です。これらのオプションがないと、ラフネスやグロスの画像で2.2または0.454のガンマ補正を試す必要があります。
Roughness mapを読み込むには、別の『Image Map Shader』を使用する事をお勧めします。 このようにして、「Colour」タブで"Data is linear"オプションを試す事が出来ます。これは、同じ"Roughness function"を複数のシェーダーに接続する必要がある場合にも役立ちます。
これらの問題が発生した場合は、TGでの表示と他のレンダラーでの表示の比較
レンダリングをPS社まで送って下さい。これにより、どんな変更を加えたり、UIで提供する必要があるかどうかの判断材料になります。
上記メタルサーフェスのテスト用データとして以下のサンプルが提供されています。
これはcc0textures.comのPBRメタルテクスチャを使用するプロジェクトのサンプルです。
パストレースとTG4.4以降で最適に機能するロバストアダプティブサンプラーを使用します。TG4.3でもレンダリングする事が出来ますが、4.4の方が高速です。
最終更新:2019年11月04日 13:19