用于所有渲染的着色器脚本。
大部分高级渲染都是通过 Material 类控制的。Shader 类主要用于检查着色器是否可以在用户的硬件上运行(isSupported 属性),设置全局着色器属性和关键字,以及按名称查找着色器(Find 方法)。
其他资源:Material 类,材质,ShaderLab 文档。
enabledGlobalKeywords | 包含当前启用的全局着色器关键字的数组。 |
globalKeywords | 包含当前存在的全局着色器关键字的数组。这包括启用和禁用的全局着色器关键字。 |
globalMaximumLOD | 所有着色器的着色器 LOD 级别。 |
globalRenderPipeline | 当前使用的渲染管线。 |
maximumChunksOverride | 设置 Unity 加载并保存在内存中的着色器变体块数量的限制。 |
isSupported | 此着色器可以在最终用户的显卡上运行吗? (只读) |
keywordSpace | 此着色器的本地关键字空间。 |
maximumLOD | 此着色器的着色器 LOD 级别。 |
passCount | 返回活动 SubShader 上的着色器通道数。 |
renderQueue | 此着色器的渲染队列。 (只读) |
subshaderCount | 返回此着色器中的 SubShader 数量。 |
FindPassTagValue | 在着色器的活动 SubShader 上搜索由 tagName 指定的标签,并返回标签的值。 |
FindPropertyIndex | 按名称查找着色器属性的索引。 |
FindSubshaderTagValue | 在由 subshaderIndex 指定的 SubShader 上搜索由 tagName 指定的标签,并返回标签的值。 |
FindTextureStack | 查找纹理所属的纹理堆栈的名称。 |
GetDependency | 返回依赖项着色器。 |
GetPassCountInSubshader | 返回给定 SubShader 中的通道数。 |
GetPropertyAttributes | 返回一个字符串数组,其中包含指定索引处的着色器属性的属性。 |
GetPropertyCount | 返回此着色器中的属性数量。 |
GetPropertyDefaultFloatValue | 返回指定索引处的着色器属性的默认浮点值。 |
GetPropertyDefaultIntValue | 返回指定索引处的着色器属性的默认整数值。 |
GetPropertyDefaultVectorValue | 返回指定索引处的着色器属性的默认 Vector4 值。 |
GetPropertyDescription | 返回指定索引处的着色器属性的描述字符串。 |
GetPropertyFlags | 返回指定索引处的着色器属性的 ShaderPropertyFlags。 |
GetPropertyName | 返回指定索引处的着色器属性的名称。 |
GetPropertyNameId | 返回指定索引处的着色器属性的 nameId。 |
GetPropertyRangeLimits | 返回指定索引处的 Range 属性的最小值和最大值限制。 |
GetPropertyTextureDefaultName | 返回指定索引处的 Texture 着色器属性的默认 Texture 名称。 |
GetPropertyTextureDimension | 返回指定索引处的 Texture 着色器属性的 TextureDimension。 |
GetPropertyType | 返回指定索引处属性的 ShaderPropertyType。 |
DisableKeyword | 禁用全局着色器关键字。 |
EnableKeyword | 启用全局着色器关键字。 |
Find | 查找具有给定名称的着色器。如果未找到着色器,则返回 null。 |
GetGlobalColor | 获取之前使用 SetGlobalColor 设置的所有着色器的全局颜色属性。 |
GetGlobalFloat | 获取之前使用 SetGlobalFloat 设置的所有着色器的全局浮点属性。 |
GetGlobalFloatArray | 获取之前使用 SetGlobalFloatArray 设置的所有着色器的全局浮点数组。 |
GetGlobalInt | 此方法已弃用。请改用 GetGlobalFloat 或 GetGlobalInteger。 |
GetGlobalInteger | 获取之前使用 SetGlobalInteger 设置的所有着色器的全局整数属性。 |
GetGlobalMatrix | 获取之前使用 SetGlobalMatrix 设置的所有着色器的全局矩阵属性。 |
GetGlobalMatrixArray | 获取之前使用 SetGlobalMatrixArray 设置的所有着色器的全局矩阵数组。 |
GetGlobalTexture | 获取之前使用 SetGlobalTexture 设置的所有着色器的全局纹理属性。 |
GetGlobalVector | 获取之前使用 SetGlobalVector 设置的所有着色器的全局向量属性。 |
GetGlobalVectorArray | 获取之前使用 SetGlobalVectorArray 设置的所有着色器的全局向量数组。 |
IsKeywordEnabled | 检查全局着色器关键字是否已启用。 |
PropertyToID | 获取着色器属性名称的唯一标识符。 |
SetGlobalBuffer | 为所有着色器设置全局缓冲区属性。 |
SetGlobalColor | 为所有着色器设置全局颜色属性。 |
SetGlobalConstantBuffer | 将 ComputeBuffer 或 GraphicsBuffer 作为命名常量缓冲区设置为所有着色器类型。 |
SetGlobalFloat | 为所有着色器设置全局浮点属性。 |
SetGlobalFloatArray | 为所有着色器设置全局浮点数组属性。 |
SetGlobalInt | 此方法已弃用。请改用 SetGlobalFloat 或 SetGlobalInteger。 |
SetGlobalInteger | 为所有着色器设置全局整数属性。 |
SetGlobalMatrix | 为所有着色器设置全局矩阵属性。 |
SetGlobalMatrixArray | 为所有着色器设置全局矩阵数组属性。 |
SetGlobalRayTracingAccelerationStructure | 为所有着色器设置全局 RayTracingAccelerationStructure 属性。 |
SetGlobalTexture | 为所有着色器设置全局纹理属性。 |
SetGlobalVector | 为所有着色器设置全局向量属性。 |
SetGlobalVectorArray | 为所有着色器设置全局向量数组属性。 |
SetKeyword | 设置全局着色器关键字的状态。 |
WarmupAllShaders | 预热当前内存中所有着色器的所有着色器变体。 |
GetInstanceID | 获取对象的实例 ID。 |
ToString | 返回对象的名称。 |
Destroy | 移除 GameObject、组件或资源。 |
DestroyImmediate | 立即销毁对象 obj。强烈建议您改用 Destroy。 |
DontDestroyOnLoad | 加载新场景时不要销毁目标对象。 |
FindAnyObjectByType | 检索类型为 type 的任何活动加载的对象。 |
FindFirstObjectByType | 检索类型为 type 的第一个活动加载的对象。 |
FindObjectsByType | 检索类型为 type 的所有加载对象的列表。 |
Instantiate | 克隆对象 original 并返回克隆。 |
InstantiateAsync | 捕获原始对象(必须与某些 GameObject 相关)的快照,并返回 AsyncInstantiateOperation。 |
bool | 对象是否存在? |
operator != | 比较两个对象是否引用不同的对象。 |
operator == | 比较两个对象引用以查看它们是否引用同一个对象。 |