光照系统
阅读本文大概需要 15 分钟。
本文概述了光照系统的概念,以及他的所有基础属性,以及如何在编辑器中,如何使用光照系统。
光照系统是什么?都有哪些功能?
光照系统是游戏场景当中主体光源效果的世界对象,可以改变环境和氛围效果等。目前包括全局属性、平行光属性、天光属性。
- 全局属性:是针对光源的整体变化的改动。
- 平行光属性:是指平行光源照射到环境下的效果,主要是模拟太阳光照射的环境效果。
- 天光属性:是指物体反射的光源效果,主要是烘托整体的环境气氛。
全局属性
偏色值
属性说明:全局的后处理调色,调整全局的灯光颜色效果。
演示效果:
- 相关接口:
ts
//设置偏色值颜色
Lighting.lightColor = new LinearColor(255,0,0)
//设置偏色值颜色
Lighting.lightColor = new LinearColor(255,0,0)
曝光补偿
属性说明:曝光的控制方式,比如环境偏暗就需要适当增加曝光值,突显画面的清晰度。
演示效果:
- 相关接口:
ts
//设置曝光补偿值
Lighting.ev100 = 0.5
//设置曝光补偿值
Lighting.ev100 = 0.5
平行光属性
朝向角度
- 属性说明:决定太阳在天空中的横向位置(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;
平行光颜色
- 属性说明:开发者可选择平行光的颜色。最终生成的地面颜色由材质、贴图与光照共同决定。
颜色选择
- 下面以水贴图作为地面图片演示效果。
光照强度为 0。
光照强度为0时的地面
色调使用纯红色(R=1.0,G=0,B=0),光照强度 100。
色调使用纯绿色(R=0.0,G=1.0,B=0),光照强度 100。
色调使用纯蓝色(R=0.0,G=0.0,B=1.0),光照强度 100。
- 相关接口:
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);