Utility functions to assist with working with shaders from the editor.
| allowAsyncCompilation | When true, asynchronous Shader compilation is allowed at the current call site. | 
| anythingCompiling | When true, the Editor is compiling some Shaders asynchronously at the point of query. | 
| disableShaderOptimization | Disables shader optimization in the Editor. | 
| hardwareSupportsRectRenderTexture | Does the current hardware support render textues. | 
| ClearCachedData | Clears all internally-cached data that was generated for the given shader, such as errors and compilation info. | 
| ClearShaderMessages | Clear compile time messages for the given shader. | 
| CompilePass | Request the Editor to compile the Shader Variant needed for the specific pass of the given Material. | 
| CreateComputeShaderAsset | Creates a new ComputeShader object from the provided source code string. You can use this method alongside the ScriptedImporter to create custom compute shader generation tools in the Editor. | 
| CreateShaderAsset | Creates a new Shader object from the provided source code string. You can use this method alongside the ScriptedImporter to create custom shader generation tools in the Editor. | 
| GetAllShaderInfo | Returns an array of ShaderInfo of all available shaders. That includes built-in shaders. | 
| GetCallableShaderCount | Returns the number of callable Shaders defined whitin a given RayTracingShader. | 
| GetCallableShaderName | Returns the name of a user-defined callable Shader from within a RayTracingShader. | 
| GetCallableShaderParamSize | Returns the parameter size of a user-defined callable Shader from within a RayTracingShader. | 
| GetComputeShaderMessageCount | Returns the number of errors and warnings generated by the Unity Shader Compiler for the given ComputeShader. | 
| GetComputeShaderMessages | Returns each error and warning generated by the Unity Shader Compiler for the given ComputeShader. | 
| GetCurrentCustomEditor | Gets the current custom editor for the shader you pass in.Depending on the render pipeline asset assigned in your Graphics Settings, the custom editor can change if the shader has a different custom editor for one or multiple render pipeline assets. | 
| GetCustomEditorForRenderPipeline | Gets the shader's custom editor class name for a specific render pipeline asset type. | 
| GetMissShaderCount | Returns the number of miss Shaders defined whitin a given RayTracingShader. | 
| GetMissShaderName | Returns the name of a user-defined miss Shader from within a RayTracingShader. | 
| GetMissShaderRayPayloadSize | Returns the ray payload size of a user-defined miss Shader from within a RayTracingShader. | 
| GetPassKeywords | Gets the local shader keywords that are valid for a Pass within a particular shader. | 
| GetPropertyCount | Get the number of properties in Shader s. | 
| GetPropertyDescription | Get the description of the shader propery at index propertyIdx of Shader s. | 
| GetPropertyName | Get the name of the shader propery at index propertyIdx of Shader s. | 
| GetPropertyType | Get the ShaderProperyType of the shader propery at index propertyIdx of Shader s. | 
| GetRangeLimits | Get Limits for a range property at index propertyIdx of Shader s. | 
| GetRayGenerationShaderCount | Returns the number of ray generation Shaders defined whitin a given RayTracingShader. | 
| GetRayGenerationShaderName | Returns the name of a user-defined ray generation Shader from within a RayTracingShader. | 
| GetRayTracingShaderMessageCount | Returns the number of errors and warnings generated by the Shader Compiler for the given RayTracingShader. | 
| GetRayTracingShaderMessages | Returns each error and warning generated by the Shader Compiler for the given RayTracingShader. | 
| GetShaderData | Get the shader data for a specific shader. | 
| GetShaderInfo | Gets ShaderInfo for the given shader. | 
| GetShaderMessageCount | Returns the number of errors and warnings generated by the Unity Shader Compiler for the given Shader. | 
| GetShaderMessages | Returns each error and warning generated by the Unity Shader Compiler for the given Shader. | 
| GetShaderPlatformKeywordsForBuildTarget | Gets the platform keywords for a shader, given a shader compiler platform, build target, and optional graphics tier. These platform keywords are necessary to properly compile a shader for a given target. | 
| GetTexDim | Gets texture dimension of a shader property. | 
| HasProceduralInstancing | Determines whether the specified Shader contains a valid Procedural Instancing variant. | 
| IsPassCompiled | Checks if the Shader variant for the given pass in the Material has already been compiled. | 
| IsShaderPropertyHidden | Returns true if the shader propery at index propertyIdx is hidden with the [HideInInspector] attribute in the shader code. | 
| IsShaderPropertyNonModifiableTexureProperty | Is the shader propery at index propertyIdx of Shader s a NonModifiableTextureProperty? | 
| PassHasKeyword | Checks whether a local shader keyword is valid for a Pass within a particular shader. | 
| RegisterShader | Register a user created shader. | 
| RestoreAsyncCompilation | Restores the previous Shader compilation mode in this CommandBuffer scope. | 
| SetAsyncCompilation | Adds shader compilation mode command in the CommandBuffer. | 
| ShaderHasError | Checks if a shader has any compilation errors. Ignores warnings. | 
| ShaderHasWarnings | Checks if a shader has any compilation warnings. Ignores errors. | 
| UpdateShaderAsset | Replaces the existing source code in the specified shader with the source code in the supplied string. |