版本: Unity 6 (6000.0)
语言英语
  • C#

ShaderUtil

UnityEditor 中的类

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实阅读了用户提出的每个建议更改,并在适用的情况下进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

描述

辅助在编辑器中处理着色器的实用程序函数。

静态属性

allowAsyncCompilation如果为真,则在当前调用站点允许异步着色器编译。
anythingCompiling如果为真,则编辑器正在异步编译某些着色器。
disableShaderOptimization禁用编辑器中的着色器优化。
hardwareSupportsRectRenderTexture当前硬件是否支持渲染纹理。

静态方法

ClearCachedData清除为给定着色器生成的全部内部缓存数据,例如错误和编译信息。
ClearShaderMessages清除给定着色器的编译时消息。
CompilePass请求编辑器编译给定材质的特定通道所需的着色器变体。
CreateComputeShaderAsset从提供的源代码字符串创建一个新的 ComputeShader 对象。您可以将此方法与 ScriptedImporter 结合使用,以在编辑器中创建自定义计算着色器生成工具。
CreateRayTracingShaderAsset从提供的源代码字符串创建一个新的 RayTracingShader 对象。您可以将此方法与 ScriptedImporter 结合使用,以在编辑器中创建自定义光线追踪着色器生成工具。
CreateShaderAsset从提供的源代码字符串创建一个新的 Shader 对象。您可以将此方法与 ScriptedImporter 结合使用,以在编辑器中创建自定义着色器生成工具。
GetAllShaderInfo返回所有可用着色器的 ShaderInfo 数组。这包括内置着色器。
GetCallableShaderCount返回给定 RayTracingShader 中定义的可调用着色器的数量。
GetCallableShaderName返回 RayTracingShader 中用户定义的可调用着色器的名称。
GetCallableShaderParamSize返回 RayTracingShader 中用户定义的可调用着色器的参数大小。
GetComputeShaderMessageCount返回 Unity 着色器编译器为给定 ComputeShader 生成的错误和警告的数量。
GetComputeShaderMessages返回 Unity 着色器编译器为给定 ComputeShader 生成的每个错误和警告。
GetCurrentCustomEditor获取您传入的着色器的当前自定义编辑器。根据图形设置中分配的渲染管线资源,如果着色器针对一个或多个渲染管线资源具有不同的自定义编辑器,则自定义编辑器可能会更改。
GetCustomEditorForRenderPipeline获取特定渲染管线资源类型的着色器的自定义编辑器类名。
GetMissShaderCount返回给定 RayTracingShader 中定义的丢失着色器的数量。
GetMissShaderName返回 RayTracingShader 中用户定义的丢失着色器的名称。
GetMissShaderRayPayloadSize返回 RayTracingShader 中用户定义的丢失着色器的光线有效负载大小。
GetPassKeywords获取特定着色器中通道有效的本地着色器关键字。
GetPropertyCount获取着色器 s 中属性的数量。
GetPropertyDescription获取着色器 s 中索引为 propertyIdx 的着色器属性的描述。
GetPropertyName获取着色器 s 中索引为 propertyIdx 的着色器属性的名称。
GetPropertyType获取着色器 s 中索引为 propertyIdx 的着色器属性的 ShaderProperyType。
GetRangeLimits获取着色器 s 中索引为 propertyIdx 的范围属性的限制。
GetRayGenerationShaderCount返回给定 RayTracingShader 中定义的光线生成着色器的数量。
GetRayGenerationShaderName返回 RayTracingShader 中用户定义的光线生成着色器的名称。
GetRayTracingShaderMessageCount返回着色器编译器为给定 RayTracingShader 生成的错误和警告的数量。
GetRayTracingShaderMessages返回着色器编译器为给定 RayTracingShader 生成的每个错误和警告。
GetShaderData获取特定着色器的着色器数据。
GetShaderInfo获取给定着色器的 ShaderInfo。
GetShaderMessageCount返回 Unity 着色器编译器为给定着色器生成的错误和警告的数量。
GetShaderMessages返回 Unity 着色器编译器为给定着色器生成的每个错误和警告。
GetShaderPlatformKeywordsForBuildTarget获取给定着色器编译器平台、构建目标和可选图形层级的着色器的平台关键字。这些平台关键字对于正确编译给定目标的着色器是必要的。
GetTexDim获取着色器属性的纹理维度。
HasProceduralInstancing确定指定的着色器是否包含有效的程序实例化变体。
IsPassCompiled检查材质中给定通道的着色器变体是否已编译。
IsShaderPropertyHidden如果着色器代码中索引为 propertyIdx 的着色器属性使用 [HideInInspector] 属性隐藏,则返回 true。
IsShaderPropertyNonModifiableTexureProperty着色器 s 中索引为 propertyIdx 的着色器属性是否为 NonModifiableTextureProperty?
PassHasKeyword检查本地着色器关键字对于特定着色器中的通道是否有效。
RegisterShader注册用户创建的着色器。
RestoreAsyncCompilation恢复此 CommandBuffer 范围内的先前着色器编译模式。
SetAsyncCompilation在 CommandBuffer 中添加着色器编译模式命令。
ShaderHasError检查着色器是否存在任何编译错误。忽略警告。
ShaderHasWarnings检查着色器是否存在任何编译警告。忽略错误。
UpdateShaderAsset将指定着色器中的现有源代码替换为提供的字符串中的源代码。