You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
234 lines
7.7 KiB
234 lines
7.7 KiB
using System; |
|
|
|
namespace UnityEngine.Rendering.Universal |
|
{ |
|
#region Material Settings |
|
|
|
/// <summary> |
|
/// Debug material modes. |
|
/// </summary> |
|
[GenerateHLSL] |
|
public enum DebugMaterialMode |
|
{ |
|
/// <summary>No material debug.</summary> |
|
None, |
|
/// <summary>Display material albedo.</summary> |
|
Albedo, |
|
/// <summary>Display material specular.</summary> |
|
Specular, |
|
/// <summary>Display material alpha.</summary> |
|
Alpha, |
|
/// <summary>Display material smoothness.</summary> |
|
Smoothness, |
|
/// <summary>Display material ambient occlusion.</summary> |
|
AmbientOcclusion, |
|
/// <summary>Display material emission.</summary> |
|
Emission, |
|
/// <summary>Display material normal (world space).</summary> |
|
NormalWorldSpace, |
|
/// <summary>Display material normal (tangent space).</summary> |
|
NormalTangentSpace, |
|
/// <summary>Display evaluated lighting complexity.</summary> |
|
LightingComplexity, |
|
/// <summary>Display material metallic.</summary> |
|
Metallic, |
|
/// <summary>Display material sprite mask.</summary> |
|
SpriteMask, |
|
} |
|
|
|
/// <summary> |
|
/// Debug mode for displaying vertex attributes interpolated from vertex to pixel shader. |
|
/// </summary> |
|
[GenerateHLSL] |
|
public enum DebugVertexAttributeMode |
|
{ |
|
/// <summary>No vertex attribute debug.</summary> |
|
None, |
|
/// <summary>Display texture coordinate 0.</summary> |
|
Texcoord0, |
|
/// <summary>Display texture coordinate 1.</summary> |
|
Texcoord1, |
|
/// <summary>Display texture coordinate 2.</summary> |
|
Texcoord2, |
|
/// <summary>Display texture coordinate 3.</summary> |
|
Texcoord3, |
|
/// <summary>Display vertex color.</summary> |
|
Color, |
|
/// <summary>Display tangent.</summary> |
|
Tangent, |
|
/// <summary>Display normal.</summary> |
|
Normal, |
|
} |
|
|
|
/// <summary> |
|
/// Debug mode for validating out-of-range values of different material channels. |
|
/// </summary> |
|
[GenerateHLSL] |
|
public enum DebugMaterialValidationMode |
|
{ |
|
/// <summary>No material debug validation override.</summary> |
|
None, |
|
/// <summary>Validate albedo values according to validation settings.</summary> |
|
Albedo, |
|
/// <summary>Validate metallic values according to validation settings.</summary> |
|
Metallic |
|
} |
|
|
|
#endregion |
|
|
|
#region Rendering Settings |
|
|
|
/// <summary> |
|
/// Debug mode for displaying intermediate render targets. |
|
/// </summary> |
|
[GenerateHLSL] |
|
public enum DebugFullScreenMode |
|
{ |
|
/// <summary>No intermediate render target displayed.</summary> |
|
None, |
|
/// <summary>Display depth buffer contents.</summary> |
|
Depth, |
|
|
|
/// <summary>Display the shadow map from additional lights.</summary> |
|
AdditionalLightsShadowMap, |
|
/// <summary>Display the main shadow map.</summary> |
|
MainLightShadowMap, |
|
} |
|
|
|
/// <summary> |
|
/// Debug mode that overrides how the renderer behaves. |
|
/// </summary> |
|
[GenerateHLSL] |
|
public enum DebugSceneOverrideMode |
|
{ |
|
/// <summary>No debug override.</summary> |
|
None, |
|
/// <summary>Visualize overdraw by drawing geometry using a semitransparent material. Areas that look opaque contain more overdraw.</summary> |
|
Overdraw, |
|
/// <summary>Render using wireframe only.</summary> |
|
Wireframe, |
|
/// <summary>Render using a constant fill color and wireframe.</summary> |
|
SolidWireframe, |
|
/// <summary>Render shaded geometry in addition to wireframe.</summary> |
|
ShadedWireframe, |
|
} |
|
|
|
/// <summary> |
|
/// Debug modes for texture mipmaps. |
|
/// </summary> |
|
[GenerateHLSL] |
|
public enum DebugMipInfoMode |
|
{ |
|
/// <summary>No mipmap debug.</summary> |
|
None, |
|
/// <summary>Display the mipmap level sampled.</summary> |
|
Level, |
|
/// <summary>Display the amount of mip levels available.</summary> |
|
Count, |
|
/// <summary>Display the mip ratio.</summary> |
|
Ratio |
|
} |
|
|
|
/// <summary> |
|
/// Mode that controls if post-processing is allowed. |
|
/// </summary> |
|
/// <remarks> |
|
/// When "Auto" is used, post-processing can be either on or off, depending on other active debug modes. |
|
/// </remarks> |
|
[GenerateHLSL] |
|
public enum DebugPostProcessingMode |
|
{ |
|
/// <summary>Post-processing disabled.</summary> |
|
Disabled, |
|
/// <summary>Post-processing is either on or off, depending on other debug modes.</summary> |
|
Auto, |
|
/// <summary>Post-processing enabled.</summary> |
|
Enabled |
|
}; |
|
|
|
/// <summary> |
|
/// Debug modes for validating illegal output values. |
|
/// </summary> |
|
[GenerateHLSL] |
|
public enum DebugValidationMode |
|
{ |
|
/// <summary>No validation.</summary> |
|
None, |
|
|
|
/// <summary>Highlight all pixels containing NaN (not a number), infinite or negative values.</summary> |
|
[InspectorName("Highlight NaN, Inf and Negative Values")] |
|
HighlightNanInfNegative, |
|
|
|
/// <summary>Highlight all pixels with values outside the specified range.</summary> |
|
[InspectorName("Highlight Values Outside Range")] |
|
HighlightOutsideOfRange |
|
} |
|
|
|
/// <summary> |
|
/// The channels used by DebugValidationMode.HighlightOutsideOfRange. |
|
/// </summary> |
|
/// <remarks> |
|
/// When "RGB" is used, the pixel's RGB value is first converted to a luminance value. |
|
/// Individual channels (R, G, B, and A) are tested individually against the range. |
|
/// </remarks> |
|
[GenerateHLSL] |
|
public enum PixelValidationChannels |
|
{ |
|
/// <summary>Use luminance calculated from RGB channels as the value to validate.</summary> |
|
RGB, |
|
/// <summary>Validate the red channel value.</summary> |
|
R, |
|
/// <summary>Validate the green channel value.</summary> |
|
G, |
|
/// <summary>Validate the blue channel value.</summary> |
|
B, |
|
/// <summary>Validate the alpha channel value.</summary> |
|
A |
|
} |
|
#endregion |
|
|
|
#region Lighting settings |
|
|
|
/// <summary> |
|
/// Debug modes for lighting. |
|
/// </summary> |
|
[GenerateHLSL] |
|
public enum DebugLightingMode |
|
{ |
|
/// <summary>No lighting debug mode.</summary> |
|
None, |
|
/// <summary>Display shadow cascades using different colors.</summary> |
|
ShadowCascades, |
|
/// <summary>Display lighting result without applying normal maps.</summary> |
|
LightingWithoutNormalMaps, |
|
/// <summary>Display lighting result (including normal maps).</summary> |
|
LightingWithNormalMaps, |
|
/// <summary>Display only reflections.</summary> |
|
Reflections, |
|
/// <summary>Display only reflections with smoothness.</summary> |
|
ReflectionsWithSmoothness, |
|
} |
|
|
|
/// <summary> |
|
/// Debug mode that allows selective disabling of individual lighting components. |
|
/// </summary> |
|
[GenerateHLSL, Flags] |
|
public enum DebugLightingFeatureFlags |
|
{ |
|
/// <summary>The debug mode is not active.</summary> |
|
None, |
|
/// <summary>Display contribution from global illumination.</summary> |
|
GlobalIllumination = 0x1, |
|
/// <summary>Display contribution from the main light.</summary> |
|
MainLight = 0x2, |
|
/// <summary>Display contribution from additional lights.</summary> |
|
AdditionalLights = 0x4, |
|
/// <summary>Display contribution from vertex lighting.</summary> |
|
VertexLighting = 0x8, |
|
/// <summary>Display contribution from emissive objects.</summary> |
|
Emission = 0x10, |
|
/// <summary>Display contribution from ambient occlusion.</summary> |
|
AmbientOcclusion = 0x20, |
|
} |
|
#endregion |
|
}
|
|
|