Unity-nlighten光照系统
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Enlighten光照系统
◆局部光照(local illumation) 简单说就是只考虑光源到模型表面的照射效 果
◆全局光照(Global illumination) 简单的说就是考虑到环境中所有表面和 光源相互作用的照射效果
◆只有直接光源(左) ,和有间接光源的全局光照(右)的表现 ,注意颜色如 何在不同的表面进行光的 ”反弹 ”,产生更真实的结果。
和点光源一样 ,使用预计算GI时 ,聚光灯不支持间接光阴影 ,这表示灯光会穿过几何影响到另外一面 , 因此放置投射灯要特别注意。
区域光 area light
区域光可以当作是摄影用的柔光灯 ,在Unity里面他们被定义为单面往Z轴发射光线的矩形 , 目前只能和烘 焙GI一起使用 , 区域光会均匀的照亮作用区域, 虽然区域光没有范围属性可以调整,但是光的强度也是会 随着距离光源越远而递减。
◆ Reflection Source---镜面反光的来源, 说到镜面放光, 需要说到Reflection Probe, 可以理解为Reflection Probe会规定一个区域, 任何进入这个区域的物体的镜 面反光的信息都会被覆盖, 而没有进入任何Reflection Probe的 物体的镜面放光的信息就是这个Reflection Source所指定的内容.
点光源
点光源的亮度从中心最强一直到范围属性(Range)设定的距离递减到0为止 , 光的强度从光源到距离成反比, 这是所谓的 ”平方反比定律 ”,类似光在现实世界的行为。 点光源从它的位置对四面八方射出光线 ,球形的小图示代表光的 ”范围 ”,光线到达此范围是会 ”衰减 ” 到0 ,但如果有间接光源或反射光则会继续投射 点光源开启阴影运算是很耗效能的 , 因此必须谨慎使用 , 点光源的阴影为了要给六个不同的世界方向会运 算六次 ,在比较差的硬件开启此功能会造成较大的效能负担。
2. 对于没有系统学习过计算机图形学的开发者 ,还是非常 建议大家去了解一下全局光照明模型的 , 因为大家可能对局 部光照明模型(就是我们平常所说的实时光照) 比较熟悉 , 有时可能会把局部光照明模型的一些知识用在全局光照明系 统上 , 白白花费时间做了一些无用功。
3. 在这种光照模型下 将光照空间设置为linear 的
区域光用在建立柔和的照明效果非常有用 ,常见的用途是拿来当作天花板壁灯或是背光灯 ,为了实现这 功能 ,我们必须从每个光照贴图像素上发射一定数量的光线 ,背对着区域光以确定光有能见度,这代表区 域光的计算是消耗很大的 ,而且会延长烘焙的时间 ,但如果运用得宜可以增加场景光的深度 ,那么消耗就 很值得 ,值得注意的是区域光只能用在烘焙 , 因此不影响游戏效能。
4 四种灯光
方向光
“定向光 ”非常适合用来模拟阳光 ,它的特性就像是个太阳 ,定向光能从无限远的距离投射光源到场景 , 从定向光发出来的光线是互相平行的 ,也不会像其他种光源会分岔 ,结果就是不管对象离定向光源多远 , 投射出来的阴影看起来都一样 ,这其实对户外场景的照明很有利。 定向光没有真正的光源坐标 ,放置在场景任何地点都不会影响光的效果 , 只有旋转会影响定向光的照射结 果。 旋转预设的定向光会导致天空盒也跟着更新 ,如果光的角度和地面平行就可以做出日落的效果 ,把光源转 到天空导致变黑就能做出夜晚的效果 ,从上往下照就会模拟日间的效果 。如果天空盒有指定为环境光源 (Ambient Source) ,那么天空盒的颜色就会影响环境里面的对象。
THANKS
谢谢观看
聚光灯 spot light
聚光灯投射一个锥体在他的Z轴前方 ,这个锥体的宽度由投射角度(Spot Angle)属性控制着,光线会从源 头到设定的范围慢慢衰减到0 , 同时越靠近锥体边缘也会衰减 ,把投射角度的值加大会让锥体宽度加大, 同时也让边缘淡化的力度变大,这现象学名叫做 ”半影 ”
可以模拟手电筒 , 因为投射区域能精确的控制 , 因此很适合用来模拟打在角色身上的光或是模拟舞台灯 光效果等等 光线会因为离源头越远而递减,可以注意到光也会因为越靠近锥体边缘而变弱,我们称之为半影区 ,这会 因为锥体角度变大而更明显。
◆ Reflection Bounces---当你使用Reflection Probe的时 候, 最多允许镜面来回反弹几次, 举个例子, 两面镜子 对着放, 会有无穷的发射次数, 而这显然是有性能消耗 的, 这里指定这个来回反弹的最大的次数.
2 GI的种类及参数
GI的种类及参数
GI分 为 两 种 , 一 种 Precomputed Realtime GI , 这 种 GI需 要 预 先 计 算 , 计 算 场 景 中 所 有 的 Static物 体 的 信 息, 并且允许在运行时任意修改光 源 的 Bounce Intensity或 者 移 动 光 源的位置 . 所有的变化都是实时的 .
第 二 种 是 Baked GI , 这 种 GI不 会 预先计算但会进行预先烘焙, 无法 像Precomputed Realtime GI那样 在运行时更改光源 .
GI的种类及参数
Precomputed Realtime GI的概念是, 预先计算场景中的所 有静态物体的信息, 具体计算出来了哪些信息咱们开发者 不用操心, 这些计算出来的信息会用于实时GI. Realtime Resolution控制的是实时GI的分辨率, 建议不要 调太高. CPU Usage这个越大, 在调节Realtime光源的时候, GI效 果就会响应得越快.CPU使用率。
目录
1 Enlighten光 照 系 统
3 四种灯光
2
GI的种类及参数
Hale Waihona Puke 1 Enlighten光照系统
Enlighten光照系统
1. Unity 5取缔了Unity 4中使用的Beast全局光照系统 , 采用 了全新的Enlighten全局光照系统 。而这两套全局光照系统的 算法并不一样 ,反映到使用上就是各种参数与操作细节的变 化。
GI的种类及参数
◆ Baked GI就是烘焙光影贴图的内容 了. 可以和Precomputed Realtime GI同 时 存 在 .
◆ Baked Resolution---Bounce效果的 分辨率, 由于是Baked的, 所以不用 像 Realtime那 样 设 置 得 很 小 .
◆ AO 环境光遮蔽 是来描绘物体和物 体相交或靠近的时候遮挡周围漫反 射光线的效果 , 可以解决或改善漏 光 、飘和阴影不实等问题
Enlighten光照系统
◆ GI =直接光照+间接光照+环境光+反射光. ◆ Sun---如果你的天空盒材质是Skybox/Procedural那么
这里允许指定一个Directional Light, 你试着旋转一下 这个Directional Light就知道他是干嘛的了.
◆ Ambient Source---环境光来源, 一般都是天空盒. 如果 你的天空盒会在游戏运行时实时变化, 一定要在 Ambient GI这里选择Realtime, 否则可以选择Baked.
GI的种类及参数
◆ General GI组的这些参数同时适用 于 实 时 GI以 及 烘 焙 GI.
Indirect Intensity- - - 同 时 调 节 Bounce, 静态物体的自发光对其他物体的影响, 以 及 ambient lighting的 强 度 . Bounce Boost 顾名思义 Default Parameters---设置一个 LightmapParameters资源上去. 这么 做是为了复用性. Atlas Size---Atlas尺寸.