Unity のマテリアルチャートは、標準的な輝度範囲を、非金属の場合は 50 - 243 sRGB、金属の場合は 186 - 255 sRGB と定義しています。Validate Albedo (アルベドの検証) モードでは、値が低すぎる、または高すぎることを示すために、これらの範囲外のピクセルを異なる色で色付けします。
以下の例では、最初のテクスチャは最低輝度値を下回っており、そのため暗すぎています。4 番目のテクスチャは最高輝度値を超えているため、明るすぎます。
マテリアルチャートは、一般的なマテリアルのアルベド値を提供します。アルベド値の明度は、生成される拡散バウンスライトの量に劇的な影響を与えるため、グローバルイルミネーションのベイクでは、異なるマテリアルタイプが正しい輝度範囲内にあり、互いに比例していることを確認することが重要です。これらの値を正しく設定しやすくするために、Luminance Validation ドロップダウンでプリセットから選択することができます。このドロップダウンから、特定のマテリアルタイプの輝度範囲を検証するための一般的なマテリアルアルベド値を利用できます。
Unity のマテリアル チャートでは、2 つの異なるスペキュラー色範囲が定義されています。
Unity では、すべての非金属マテリアルには一定のスペキュラー色があり、この色は常に正しい範囲内に収まっています。しかし、金属マテリアルでは、スペキュラー値が低すぎるということがよくあります。この問題のある金属マテリアルを見つけやすくするために、マテリアルバリデーターの Validate Metal Specular (メタルスペキュラーの検証) モードでは、スペキュラー色の値が低すぎるすべてのピクセルが色付けされます。これには、定義上は非金属マテリアルとされているものも含まれます。
下の例の左のマテリアルでは、スペキュラー値が最低よりも低いため、表示が暗すぎます。これはシーンの背景にも当てはまります。右のマテリアルのスペキュラー値は、有効範囲内です。
Unity では、スペキュラー色の値が 155 sRGB より高い物理ベースのシェーディングマテリアルを、金属と定義します。また、正しく設定された金属マテリアルを__ピュアメタル__と呼びます。
非金属サーフェスのスペキュラー色の値が高すぎるにもかかわらずアルベド値が 0 でないという状況は、多くの場合、オーサリングエラーによって引き起こされます。Material Validator には、Check Pure Metals (ピュアメタルのチェック) というオプションがあります。このオプションを有効にすると、Unity では金属として定義しているにもかかわらずアルベド値が 0 でないマテリアルが、Material Validator によって黄色で表示されます。下の画像にその例を示します。表示されている 3 つのマテリアルで、左と右のマテリアルはピュアメタルですが、中央のマテリアルは異なるため、Material Validator で黄色に表示されます。
上の 2 番目の画像の背景は赤くなっていますが、これは Material Validator の Validate Metal Specular モードで背景のマテリアルのスペキュラー値が最低値よりも低いからです。
金属と非金属のプロパティを組み合わせた複雑なマテリアルに対して、ピュアメタルのチェック機能が無効なピクセルの一部を検出することがあります。しかし、マテリアルがすべて無効な場合は、通常はオーサリングエラーです。
プロジェクトのアートスタイルによっては、マテリアルの輝度値をプリセットされた輝度範囲の外に設定する場合があります。このような場合、Material Validator を使ってビルトインのアルベド値を独自の値にオーバーライドすることができます。プリセットの輝度範囲をオーバーライドするには、必要な各マテリアルタイプの AlbedoSwatchInfo 値の配列を、プロパティの EditorGraphicsSettings.albedoSwatches に割り当てます。