Skip to content
光照系统

光照系统

阅读本文大概需要 15 分钟。

本文概述了光照系统的概念,以及他的所有基础属性,以及如何在编辑器中,如何使用光照系统。

光照系统是什么?都有哪些功能?

光照系统是游戏场景当中主体光源效果的世界对象,可以改变环境和氛围效果等。目前包括平行光和天光。

  • 平行光属性:是指平行光源照射到环境下的效果,主要是模拟太阳光照射的环境效果。
  • 天光属性:是指物体反射的光源效果,主要是烘托整体的环境气氛。

平行光属性

朝向角度

  • 属性说明:决定太阳在天空中的横向位置(XY轴)
  • 数值范围:【-180,180】
  • 演示效果:

  • 相关接口:
ts
//设置太阳朝向角度为30
Lighting.yawAngle = 30;
//设置太阳朝向角度为30
Lighting.yawAngle = 30;

俯仰角度

  • 属性说明:决定太阳在天空中的纵向位置(Z轴)
  • 数值范围:【-90,90】
  • 演示效果:

  • 相关接口:
ts
//设置太阳俯仰角度为-30
Lighting.pitchAngle = -30;
//设置太阳俯仰角度为-30
Lighting.pitchAngle = -30;

平行光强度

  • 属性说明:开发者可通过滑动滚轮调整平行光强度。
  • 数值范围:0-100。

强度为0时候的地面

强度为50时候的地面

强度为100时候的地面
  • 相关接口:
ts
//设置平行光强度为10
Lighting.directionalLightIntensity = 10;
//设置平行光强度为10
Lighting.directionalLightIntensity = 10;

平行光颜色

  • 属性说明:开发者可选择平行光的颜色。最终生成的地面颜色由材质、贴图与光照共同决定。

  • 相关接口:

ts
//设置平行光颜色为淡黄色
Lighting.directionalLightColor = new Type.LinearColor(255,240,200);
//设置平行光颜色为淡黄色
Lighting.directionalLightColor = new Type.LinearColor(255,240,200);

投射阴影

  • 投射阴影:是否启动阴影效果。

有阴影

无阴影
  • 阴影距离:影响阴影的视觉表现。

    • 此值越大,图越模糊,阴影像素越大。

阴影距离为5000
  • 此值越小,图越清晰,阴影像素越小。

阴影距离为1000
  • 相关接口:
ts
//关闭投射阴影
Lighting.castShadowsEnabled = false;

//开启投射阴影
Lighting.castShadowsEnabled = true;
//关闭投射阴影
Lighting.castShadowsEnabled = false;

//开启投射阴影
Lighting.castShadowsEnabled = true;

色温

  • 是否启用色温:勾选后启用色温效果
  • 色温:太阳温度的大小,范围【1000,14000】

温度1000

温度4000

温度14000
  • 相关接口:
ts
//关闭太阳光色温
Lighting.temperatureEnabled = false;

//开启太阳光色温
Lighting.temperatureEnabled = true;

//设置太阳光色温为4000
Lighting.temperature = 4000;
//关闭太阳光色温
Lighting.temperatureEnabled = false;

//开启太阳光色温
Lighting.temperatureEnabled = true;

//设置太阳光色温为4000
Lighting.temperature = 4000;

天光属性

天光贴图

  • 功能说明:天光贴图是我们预设好的反射球贴图,可以让用户可以快速选择环境的反射效果,营造想要的气氛。

  • 操作步骤:

  • 首先我们打开【资源库】的【天空盒】列表,从中找到【反射球】的类型资源

  • 然后可以将其中的贴图拖入到天光贴图中。

天光强度

  • 功能说明:物体反射光的效果强弱程度;数值越低效果越弱,数值越高效果越强

天光强度为0.2时:整个世界的光线昏暗

天光强度为1.0时:整个世界的光线明亮

天光强度为6.0时:整个世界的光线过于耀眼
  • 相关接口:
ts
//设置天光强度为2
Lighting.skyLightIntensity = 2;
//设置天光强度为2
Lighting.skyLightIntensity = 2;

天光颜色

  • 功能说明:天光色调是照射在整个世界的天光的色调;可根据开发者的喜好进行调整。

天光色调为红 FF000000

天光色调为绿 00FF0000

天光色调为蓝 0000FF00
  • 相关接口:
ts
//设置天光强度为绿色
Lighting.skyLightColor = new Type.LinearColor(255, 0, 0);
//设置天光强度为绿色
Lighting.skyLightColor = new Type.LinearColor(255, 0, 0);

偏色值

  • 属性说明:全局的后处理调色,调整全局的灯光颜色效果。

  • 演示效果:

  • 相关接口:
ts
//设置偏色值颜色
Lighting.lightColor = new LinearColor(255,0,0)
//设置偏色值颜色
Lighting.lightColor = new LinearColor(255,0,0)

曝光补偿

  • 属性说明:曝光的控制方式,比如环境偏暗就需要适当增加曝光值,突显画面的清晰度。

  • 演示效果:

  • 相关接口:
ts
//设置曝光补偿值
Lighting.ev100 = 0.5
//设置曝光补偿值
Lighting.ev100 = 0.5