在Unity中,光源分为聚光灯、方向光(环境光)、点光源、面光源

光源组件的通用参数

  • Color (颜色): 设置光源的颜色。

  • Intensity (强度): 控制光源的亮度。

  • Bounce Intensity (反弹强度): 影响间接光的强度(仅限某些光源类型)。

  • Shadow Type (阴影类型): 决定是否投射硬阴影、软阴影或者不投射阴影。

  • Shadows (阴影参数): 包含了阴影的具体设置,如分辨率、偏移、强度等。

  • Range (范围): 对于点光源和聚光灯来说,这是光能到达的最大距离。

  • Spot Angle (聚光角度): 仅适用于聚光灯,定义了光锥的角度。

  • Culling Mask (剔除遮罩): 确定哪些图层的对象会受到此光源的影响。

  • Light Mode (光照模式): 可以是实时光照、混合光照或烘焙光照,取决于你想要的性能和质量平衡。

1. 点光源

模拟从一个点向所有方向等量发光的光源,比如灯泡。

光强随距离衰减,有一个指定的范围,在该范围内光强度逐渐减弱。

  • Flare:耀斑

  • Render Mode:渲染模式

    • Auto:运行时确定

    • Important:以像素质量为单位进行渲染,效果逼真,消耗大

    • Not Important:以快速模式进行渲染

  • Draw Halo:它用于控制是否在光源周围绘制一个光环效果

  • Indirect Multiplier:改变间接光的强度。低于1,每次反弹会使光更暗。大于1,每次反弹会使光更亮。

2. 聚光灯

模拟具有锥形照射区域的光源,如汽车前灯或舞台聚光灯。

有角度限制,只有在锥体内的物体才能受到光照;同样,光强也会随距离衰减。

3. 面光源

模拟从一个平面发出的光,产生柔和的阴影。

在烘焙光照贴图时使用,实时渲染中无法直接使用,但在后期处理中可以模拟类似效果。

public Light light;

public float transformSpeed;

private void Update()

{

    light.transform.Rotate(Vector3.right, transformSpeed * Time.deltaTime);

}

光面板

1. 环境光设置

  • Skybox Material:天空盒材质,可以改变天空

  • Sun Source:太阳来源,不设置,默认会使用场景中最亮的方向光代表太阳

  • Enviorment Lighing:环境光设置

    • Source:光源颜色

      • SkyBox:天空盒材质作为环境光颜色

      • Gradient:天空盒、地平线、地面单独选择和他们之间混合

    • Intensity Multiplier:环境光亮度

    • Ambient Mode:全局光照模式,只有启用了实时全局和全局烘培才能用