用于光源组件的脚本接口。
使用它来控制 Unity 光源的所有方面。这些属性与 Inspector 中显示的值完全匹配。
通常光源是在编辑器中创建的,但有时您可能想从脚本中创建光源。
using UnityEngine;
public class Example : MonoBehaviour { void Start() { // Make a game object GameObject lightGameObject = new GameObject("The Light");
// Add the light component Light lightComp = lightGameObject.AddComponent<Light>();
// Set color and position lightComp.color = Color.blue;
// Set the position (or any transform property) lightGameObject.transform.position = new Vector3(0, 5, 0); } }
areaSize | 区域光源的大小。 |
bakingOutput | 此属性描述了上次全局照明烘焙的输出。 |
bounceIntensity | 定义反弹照明的强度的乘数。 |
boundingSphereOverride | 用于在剔除期间覆盖常规光源包围球的包围球。 |
color | 光源的颜色。 |
colorTemperature | 光源的色温。相关色温(缩写为 CCT)在计算光源的最终颜色时会与颜色滤镜相乘。理想黑体发出的电磁辐射的色温定义为其表面温度(开尔文)。根据 D65 标准,白色为 6500K。烛光为 1800K,柔和的暖色调灯泡为 2700K。如果要使用 colorTemperature,则必须启用 GraphicsSettings.lightsUseLinearIntensity 和 Light.useColorTemperature。其他资源:GraphicsSettings.lightsUseLinearIntensity、GraphicsSettings.useColorTemperature。 |
commandBufferCount | 此光源上设置的命令缓冲区数量(只读)。 |
cookie | 光源投射的 Cookie 纹理。 |
cookieSize | 方向光源的 Cookie 的大小。 |
cullingMask | 用于选择性地照亮场景中的特定物体。 |
dilatedRange | Light.range 属性描述了光源上每个点的范围。但是,区域光源由多个发光点组成,因此有效范围会略大一些,并且取决于区域光源的大小。此属性返回此更大的范围。使用此属性来查找给定世界空间点是否会被区域光源照亮。如果不是区域光源,则返回与 Light.range 相同的值。 |
enableSpotReflector | 聚光灯是否应模拟具有反射器。 |
flare | 此光源要使用的耀斑资源。 |
forceVisible | 即使光源在视锥体之外,也要强制光源可见。 |
innerSpotAngle | 聚光灯内锥的角(度)。 |
intensity | 光源的强度会与光源颜色相乘。 |
layerShadowCullDistances | 每个光源、每个层的阴影剔除距离。仅适用于方向光源。 |
lightmapBakeType | 此属性描述了光源贡献的哪些部分可以进行烘焙(仅限编辑器)。 |
lightShadowCasterMode | 允许您为每个光源覆盖全局阴影遮罩模式。仅在渲染管线可以处理每个光源阴影遮罩模式时使用此功能。与传统渲染器不兼容。 |
lightUnit | 应显示 Light.intensity 的单位。 |
luxAtDistance | 从哪里测量 LightUnit.Lux 的距离。 |
range | 光源每个点的范围。由于区域光源具有发光表面而不是单个点,因此光源的累积范围大于此属性。此更大的范围可以从 Light.dilatedRange 属性中读取。对于非区域光源,Light.range 和 Light.dilatedRange 返回相同的值。 |
renderingLayerMask | 确定此光源影响的渲染层遮罩。 |
renderMode | 如何渲染光源。 |
shadowAngle | 控制方向光源投射的阴影边缘的应用的人工柔化程度(仅限编辑器)。 |
shadowBias | 阴影贴图常数偏差。 |
shadowCustomResolution | 阴影贴图的自定义分辨率。 |
shadowMatrixOverride | 在阴影剔除期间覆盖常规光源投影矩阵的矩阵。如果将 Light.useShadowMatrixOverride 设置为 true,Unity 会使用此矩阵。 |
shadowNearPlane | 用于阴影视锥体的近平面值。 |
shadowNormalBias | 阴影贴图基于法线的偏差。 |
shadowRadius | 控制点光源或聚光灯投射的阴影边缘的应用的人工柔化程度(仅限编辑器)。 |
shadowResolution | 阴影贴图的分辨率。 |
shadows | 此光源如何投射阴影。 |
shadowStrength | 光源阴影的强度。 |
spotAngle | 聚光灯锥的角(度)。 |
type | 光源的类型。 |
useBoundingSphereOverride | 设置为 true 以覆盖用于剔除的光源包围球。 |
useColorTemperature | 设置为 true 以使用色温。 |
useShadowMatrixOverride | 设置为 true 以启用用于阴影剔除期间的自定义矩阵。 |
useViewFrustumForShadowCasterCull | 当光源位于视锥体之外时,是否为该光源剔除阴影。 |
AddCommandBuffer | 添加一个命令缓冲区,以便在指定位置执行。 |
AddCommandBufferAsync | 将命令缓冲区添加到 GPU 的异步计算队列,并在图形处理到达特定点时执行该命令缓冲区。 |
GetCommandBuffers | 获取要在指定位置执行的命令缓冲区。 |
RemoveAllCommandBuffers | 删除此光源上设置的所有命令缓冲区。 |
RemoveCommandBuffer | 从指定位置执行的命令缓冲区中删除命令缓冲区。 |
RemoveCommandBuffers | 从指定位置执行的命令缓冲区中删除命令缓冲区。 |
Reset | 将所有光源参数恢复为默认值。 |
SetLightDirty | 将光源设置为脏,以通知光源烘焙后端更新其内部光源表示(仅限编辑器)。 |
enabled | 启用的行为会更新,禁用的行为不会更新。 |
isActiveAndEnabled | 报告游戏对象及其关联的行为是否处于活动状态且已启用。 |
gameObject | 此组件所附加到的游戏对象。组件始终附加到游戏对象。 |
tag | 此游戏对象的标签。 |
transform | 附加到此游戏对象的变换。 |
hideFlags | 对象是否应隐藏、与场景一起保存或可由用户修改? |
name | 对象的名称。 |
BroadcastMessage | 在此游戏对象或其任何子级中的每个 MonoBehaviour 上调用名为 methodName 的方法。 |
CompareTag | 将游戏对象的标签与定义的标签进行比较。 |
GetComponent | 获取与指定组件相同的 GameObject 上类型为 T 的组件的引用。 |
GetComponentInChildren | 获取与指定组件相同的 GameObject 上类型为 T 的组件的引用,或 GameObject 的任何子级。 |
GetComponentIndex | 获取其父级 GameObject 上组件的索引。 |
GetComponentInParent | 获取与指定组件相同的 GameObject 上类型为 T 的组件的引用,或 GameObject 的任何父级。 |
GetComponents | 获取与指定组件相同的 GameObject 上类型为 T 的所有组件的引用。 |
GetComponentsInChildren | 获取与指定组件相同的 GameObject 上类型为 T 的所有组件的引用,以及 GameObject 的任何子级。 |
GetComponentsInParent | 获取与指定组件相同的 GameObject 上类型为 T 的所有组件的引用,以及 GameObject 的任何父级。 |
SendMessage | 在此游戏对象中的每个 MonoBehaviour 上调用名为 methodName 的方法。 |
SendMessageUpwards | 在此游戏对象中的每个 MonoBehaviour 上调用名为 methodName 的方法,以及行为的每个祖先。 |
TryGetComponent | 获取指定类型的组件(如果存在)。 |
GetInstanceID | 获取对象的实例 ID。 |
ToString | 返回对象的名称。 |
Destroy | 删除游戏对象、组件或资源。 |
DestroyImmediate | 立即销毁对象 obj。强烈建议您使用 Destroy 代替。 |
DontDestroyOnLoad | 加载新场景时不要销毁目标对象。 |
FindAnyObjectByType | 检索类型为 type 的任何活动加载对象。 |
FindFirstObjectByType | 检索类型为 type 的第一个活动加载对象。 |
FindObjectsByType | 检索类型为 type 的所有加载对象的列表。 |
Instantiate | 克隆对象 original 并返回克隆。 |
InstantiateAsync | 捕获原始对象(必须与某些游戏对象相关联)的快照,并返回 AsyncInstantiateOperation。 |
bool | 对象是否存在? |
operator != | 比较两个对象是否引用不同的对象。 |
operator == | 比较两个对象引用以查看它们是否引用同一个对象。 |