You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity开发:如何添加Directional Light并有效控制其属性?

Unity方向光(Directional Light)添加与属性控制指南

一、添加方向光的两种常用方式

  • 顶部菜单栏操作:点击 GameObject > Light > Directional Light,方向光会直接生成在场景原点位置
  • Hierarchy面板右键操作:右键面板空白处,选择 Light > Directional Light,效果和上面完全一致
  • 提示:新生成的方向光会自动被纳入场景的Lighting设置(Window > Rendering > Lighting Settings),默认作为主光源

二、Inspector面板手动控制属性

选中场景中的方向光,Inspector面板里的Light组件是控制核心,常用属性操作如下:

  • 强度(Intensity):直接拖动滑块或输入数值。注意管线差异:内置管线建议0-8之间,URP/HDRP支持更高数值,开启HDR后可以设置过曝值模拟真实强光效果
  • 颜色(Color):点击颜色框打开拾色器选色,也可以直接输入RGB/HSV精确数值。比如清晨用浅蓝、正午用亮白、黄昏用橙黄、夜晚用深灰蓝
  • 旋转(Rotation):两种操作方式:一是在Scene视图拖动方向光的箭头Gizmo直观调整光照方向;二是在Inspector的Transform组件里修改X/Y/Z旋转值——X轴数值直接对应太阳高度(0度是头顶直射,90度是地平线水平照射)
  • 其他实用属性:
    • Shadow Type:选择Hard Shadows(硬阴影)或Soft Shadows(软阴影),性能有限时用硬阴影,追求真实感开软阴影;不需要阴影就直接关闭节省性能
    • Cookie:添加纹理可以模拟特殊投影(比如树叶缝隙、格栅阴影),适合营造场景氛围

三、脚本动态控制属性示例

如果需要动态调整(比如昼夜循环、剧情触发光照变化),可以用C#脚本实现:

using UnityEngine;

public class DirectionalLightController : MonoBehaviour
{
    private Light _lightComponent;

    void Start()
    {
        // 获取自身的Light组件引用
        _lightComponent = GetComponent<Light>();
    }

    // 调整光照强度
    public void UpdateIntensity(float newIntensity)
    {
        _lightComponent.intensity = newIntensity;
    }

    // 修改光照颜色
    public void UpdateColor(Color targetColor)
    {
        _lightComponent.color = targetColor;
    }

    // 设置光照方向(模拟太阳角度变化)
    public void SetSunAngle(float angle)
    {
        transform.rotation = Quaternion.Euler(angle, 0, 0);
    }
}

使用方式:把脚本挂在方向光对象上,要么在Inspector面板通过按钮调用方法,要么在其他脚本里引用该组件调用对应函数。

四、最佳实践

  • 单场景尽量只保留一个主方向光,多方向光会大幅增加渲染开销,特殊场景(如双光源科幻场景)除外
  • 开启HDR后,强度不要过高,避免场景过曝,后期可通过Post Processing调整全局曝光
  • 阴影设置适配平台:移动端建议用Hard Shadows并降低阴影分辨率,PC/主机可开Soft Shadows提升真实感
  • 昼夜循环实现:结合脚本动态修改旋转、颜色和强度,模拟从清晨到夜晚的自然光照变化
  • 测试技巧:点击Scene视图顶部的Scene Lighting按钮,切换光照预览模式,方便查看暗部细节或阴影效果

内容的提问来源于stack exchange,提问作者Youth Dream

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 17:05:29