DebugMenuManager.instance.AddDebugItem<bool>("HDRP","Enable Material Classification",()=>m_Asset.tileSettings.enableComputeMaterialVariants,(value)=>m_Asset.tileSettings.enableComputeMaterialVariants=(bool)value,DebugItemFlag.RuntimeOnly);
// In both forward and deferred, everything opaque should have been rendered at this point so we can safely copy the depth buffer for later processing.
// In case of deferred renderer, we can have forward opaque material. These materials need to be render in the depth buffer to correctly build the light list.
// And they will tag the stencil to not be lit during the deferred lighting pass.
// It must also have a "DepthForwardOnly" and no "DepthOnly" pass as forward material (either deferred or forward only rendering) have always a depth pass.
// In case of forward only rendering we have a depth prepass. In case of deferred renderer, it is optional
// RenderGBuffer do the gbuffer pass. This is solely call with deferred. If we use a depth prepass, then the depth prepass will perform the alpha testing for opaque apha tested and we don't need to do it anymore
// during Gbuffer pass. This is handled in the shader and the depth test (equal and no depth write) is done here.
// Forward opaque material always have a prepass (whether or not we use deferred, whether or not there is option like alpha test only) so we pass the right depth state here.
"If enabled, shades additional lights exceeding maxAdditionalPixelLights per-vertex up to the maximum of 8 lights.");
publicstaticGUIContentenableSoftParticles=newGUIContent("Enable Soft Particles","By enabled this the pipeline will generate depth texture necessary for SoftParticles");
publicstaticGUIContentrequireCameraDepthTexture=newGUIContent("Camera Depth Texture","If enabled the the pipeline will generate depth texture necessary for some effects like soft particles.");
"Clear Flags","What to display in empty areas of this Camera's view.\n\nChoose Skybox to display a skybox in empty areas, defaulting to a background color if no skybox is found.\n\nChoose Solid Color to display a background color in empty areas.\n\nChoose Depth Only to display nothing in empty areas.\n\nChoose Don't Clear to display whatever was displayed in the previous frame in empty areas."));
}
publicvoidDrawBackgroundColor()
{
EditorGUILayout.PropertyField(backgroundColor,
newGUIContent("Background","The Camera clears the screen to this color before rendering."));
"Projection","How the Camera renders perspective.\n\nChoose Perspective to render objects with perspective.\n\nChoose Orthographic to render objects uniformly, with no sense of perspective."),
newGUIContent("Viewport Rect","Four values that indicate where on the screen this camera view will be drawn. Measured in Viewport Coordinates (values 0–1)."));
publicreadonlyGUIContentType=newGUIContent("Type","Specifies the current type of light. Possible types are Directional, Spot, Point, and Area lights.");
publicreadonlyGUIContentRange=newGUIContent("Range","Controls how far the light is emitted from the center of the object.");
publicreadonlyGUIContentColor=newGUIContent("Color","Controls the color being emitted by the light.");
publicreadonlyGUIContentIntensity=newGUIContent("Intensity","Controls the brightness of the light. Light color is multiplied by this value.");
publicreadonlyGUIContentLightmappingMode=newGUIContent("Mode","Specifies the light mode used to determine if and how a light will be baked. Possible modes are Baked, Mixed, and Realtime.");
publicreadonlyGUIContentLightBounceIntensity=newGUIContent("Indirect Multiplier","Controls the intensity of indirect light being contributed to the scene. A value of 0 will cause Realtime lights to be removed from realtime global illumination and Baked and Mixed lights to no longer emit indirect lighting. Has no effect when both Realtime and Baked Global Illumination are disabled.");
publicreadonlyGUIContentShadowType=newGUIContent("Shadow Type","Specifies whether Hard Shadows, Soft Shadows, or No Shadows will be cast by the light.");
//realtime
publicreadonlyGUIContentShadowRealtimeSettings=newGUIContent("Realtime Shadows","Settings for realtime direct shadows.");
publicreadonlyGUIContentShadowStrength=newGUIContent("Strength","Controls how dark the shadows cast by the light will be.");
publicreadonlyGUIContentShadowResolution=newGUIContent("Resolution","Controls the rendered resolution of the shadow maps. A higher resolution will increase the fidelity of shadows at the cost of GPU performance and memory usage.");
publicreadonlyGUIContentShadowBias=newGUIContent("Bias","Controls the distance at which the shadows will be pushed away from the light. Useful for avoiding false self-shadowing artifacts.");
publicreadonlyGUIContentShadowNormalBias=newGUIContent("Normal Bias","Controls distance at which the shadow casting surfaces will be shrunk along the surface normal. Useful for avoiding false self-shadowing artifacts.");
publicreadonlyGUIContentShadowNearPlane=newGUIContent("Near Plane","Controls the value for the near clip plane when rendering shadows. Currently clamped to 0.1 units or 1% of the lights range property, whichever is lower.");
//baked
publicreadonlyGUIContentBakedShadowRadius=newGUIContent("Baked Shadow Radius","Controls the amount of artificial softening applied to the edges of shadows cast by the Point or Spot light.");
publicreadonlyGUIContentBakedShadowAngle=newGUIContent("Baked Shadow Angle","Controls the amount of artificial softening applied to the edges of shadows cast by directional lights.");
publicreadonlyGUIContentRenderMode=newGUIContent("Render Mode","Specifies the importance of the light which impacts lighting fidelity and performance. Options are Auto, Important, and Not Important. This only affects Forward Rendering");
publicreadonlyGUIContentCullingMask=newGUIContent("Culling Mask","Specifies which layers will be affected or excluded from the light's effect on objects in the scene.");
publicreadonlyGUIContentAreaWidth=newGUIContent("Width","Controls the width in units of the area light.");
publicreadonlyGUIContentAreaHeight=newGUIContent("Height","Controls the height in units of the area light.");
publicreadonlyGUIContentIndirectBounceShadowWarning=newGUIContent("Realtime indirect bounce shadowing is not supported for Spot and Point lights.");
publicstaticGUIContentstreamApplyToAllSystemsText=newGUIContent("Apply to Systems","Apply the vertex stream layout to all Particle Systems using this material");