Version: 2023.2

Shader

class in UnityEngine

/

继承自:Object

切换到手册

描述

用于所有渲染的着色器脚本。

大多数高级渲染是通过 Material 类控制的。着色器类主要 用于检查着色器是否能够在用户的硬件(isSupported 属性)上运行,从而设置 全局着色器属性和关键字,以及按名称(Find 方法)查找着色器。

另请参阅:Material 类、MaterialsShaderLab documentation

静态变量

enabledGlobalKeywordsAn array containing the global shader keywords that are currently enabled.
globalKeywordsAn array containing the global shader keywords that currently exist. This includes enabled and disabled global shader keywords.
globalMaximumLOD所有着色器的着色器细节级别。
globalRenderPipeline当前正在使用的渲染管线。
maximumChunksOverrideSets the limit on the number of shader variant chunks Unity loads and keeps in memory.

变量

isSupported该着色器能否在最终用户显卡上运行?(只读)
keywordSpaceThe local keyword space of this shader.
maximumLOD此着色器的着色器细节级别。
passCount返回活动 SubShader 上的着色器通道数。
renderQueue此着色器的渲染队列。(只读)
subshaderCountReturns the number of SubShaders in this shader.

公共函数

FindPassTagValueSearches for the tag specified by tagName on the shader's active SubShader and returns the value of the tag.
FindPropertyIndex按名称查找着色器属性的索引。
FindSubshaderTagValueSearches for the tag specified by tagName on the SubShader specified by subshaderIndex and returns the value of the tag.
FindTextureStackFind the name of a texture stack a texture belongs too.
GetDependency返回依赖关系着色器。
GetPassCountInSubshaderReturns the number of passes in the given SubShader.
GetPropertyAttributes返回一个字符串数组,其中包含位于指定索引处的着色器属性的特性。
GetPropertyCount返回此着色器中的属性数。
GetPropertyDefaultFloatValue返回指定索引处的着色器属性的默认浮点值。
GetPropertyDefaultIntValueReturns the default int value of the shader property at the specified index.
GetPropertyDefaultVectorValue返回指定索引处的着色器属性的默认 Vector4 值。
GetPropertyDescription返回指定索引处的着色器属性的描述字符串。
GetPropertyFlags返回指定索引处的着色器属性的 ShaderPropertyFlags。
GetPropertyName返回指定索引处的着色器属性的名称。
GetPropertyNameId返回指定索引处的着色器属性的 nameId。
GetPropertyRangeLimits返回指定索引处的 Range 属性的下限和上限。
GetPropertyTextureDefaultName返回指定索引处的 Texture 着色器属性的默认纹理名称。
GetPropertyTextureDimension返回指定索引处的 Texture 着色器属性的 TextureDimension。
GetPropertyType返回指定索引处的属性的 ShaderPropertyType。

静态函数

DisableKeywordDisables a global shader keyword.
EnableKeywordEnables a global shader keyword.
FindFinds a shader with the given name. Returns null if the shader is not found.
GetGlobalColor获取先前用 SetGlobalColor 为所有着色器设置的全局颜色属性。
GetGlobalFloat获取先前用 SetGlobalFloat 为所有着色器设置的全局浮点属性。
GetGlobalFloatArray获取先前用 SetGlobalFloatArray 为所有着色器设置的全局浮点数组。
GetGlobalIntThis method is deprecated. Use GetGlobalFloat or GetGlobalInteger instead.
GetGlobalIntegerGets a global integer property for all shaders previously set using SetGlobalInteger.
GetGlobalMatrix获取先前用 SetGlobalMatrix 为所有着色器设置的全局矩阵属性。
GetGlobalMatrixArray获取先前用 SetGlobalMatrixArray 为所有着色器设置的全局矩阵数组。
GetGlobalTexture获取先前用 SetGlobalTexture 为所有着色器设置的全局纹理属性。
GetGlobalVector获取先前用 SetGlobalVector 为所有着色器设置的全局向量属性。
GetGlobalVectorArray获取先前用 SetGlobalVectorArray 为所有着色器设置的全局向量数组。
IsKeywordEnabledChecks whether a global shader keyword is enabled.
PropertyToID获取着色器属性名称的唯一标识符。
SetGlobalBufferSets a global buffer property for all shaders.
SetGlobalColor为所有着色器设置全局颜色属性。
SetGlobalConstantBufferSets a ComputeBuffer or GraphicsBuffer as a named constant buffer for all shader types.
SetGlobalFloat为所有着色器设置全局浮点属性。
SetGlobalFloatArray为所有着色器设置全局浮点数组属性。
SetGlobalIntThis method is deprecated. Use SetGlobalFloat or SetGlobalInteger instead.
SetGlobalIntegerSets a global integer property for all shaders.
SetGlobalMatrix为所有着色器设置全局矩阵属性。
SetGlobalMatrixArray为所有着色器设置全局矩阵数组属性。
SetGlobalRayTracingAccelerationStructureSets a global RayTracingAccelerationStructure property for all shaders.
SetGlobalTexture为所有着色器设置全局纹理属性。
SetGlobalVector为所有着色器设置全局向量属性。
SetGlobalVectorArray为所有着色器设置全局向量数组属性。
SetKeywordSets the state of a global shader keyword.
WarmupAllShadersPrewarms all shader variants of all Shaders currently in memory.

继承的成员

变量

hideFlags该对象应该隐藏、随场景一起保存还是由用户修改?
name对象的名称。

公共函数

GetInstanceIDGets the instance ID of the object.
ToString返回对象的名称。

静态函数

Destroy移除 GameObject、组件或资源。
DestroyImmediate立即销毁对象 /obj/。强烈建议您改用 Destroy。
DontDestroyOnLoad在加载新的 Scene 时,请勿销毁 Object。
FindAnyObjectByTypeRetrieves any active loaded object of Type type.
FindFirstObjectByTypeRetrieves the first active loaded object of Type type.
FindObjectsByTypeRetrieves a list of all loaded objects of Type type.
Instantiate克隆 original 对象并返回克隆对象。

运算符

bool该对象是否存在?
operator !=比较两个对象是否引用不同的对象。
operator ==比较两个对象引用,判断它们是否引用同一个对象。
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961