烘焙光
2018-02-10 23:19
141 查看
原文链接:烘焙光
烘培光是设置为烘培模式的光照组件。
烘培光可以用来表示局部环境光,而不是功能齐全的光照。Unity在运行时之前预计算这些光照的照明,并在在任何运行时灯光计算中都不会考虑它们。这意味着烘培光没有运行时开销。
Unity将烘培光的直接和间接光烘培到光照贴图(照明静态GameObject)和光探测器(照亮动态GameObject)。即使在动态GameObject(参见Wikipedia: Specular highlight了解更多信息)上,烘培光也不能形成镜面光照效果。烘培光不会响应玩家的动作和场景中发生的事件。它们主要用来增加黑暗区域的亮度,而不用调整场景中所有光照。
烘培光也是唯一不能从动态GameObject向动态GameObject投射阴影的光照类型。
提供间接照明
静态GameObject的所有光照只形成一个可以从着色器的光照贴图中获取的纹理。
动态GameObject不能向静态GameObject投射阴影
只能使用光探测器得到静态GameObject向动态GameObject投射的低分辨率阴影
与实时光相比,光照贴图纹理会占用更多内存,因为光照贴图需要额外包含直接光照信息
烘培模式:所有光照路径会被预处理
Unity会预处理直接烘培光,也就是说在运行时Unity不知道光照的方向信息。少量的纹理操作会处理场景区域烘培光的所有光照计算。没有方向信息,UnityUnity不能进行镜面反射的计算。如果要得到镜面反射,可以使用反射探测器或者混和光或者实时光。查看文档directional light maps了解更多内容。
烘培光无法在运行时照亮动态GameObject。动态物体从烘培光获取光照的唯一方法是通过光探测器。这是烘培光和任何Subtractive mode Mixed Lights的唯一区别(除了主要方向光),Subtractive模式的混和光会在运行时为动态GameObject计算光照。
2017-06-08发布 limited editorial review
光照模式在5.6增加
烘培光是设置为烘培模式的光照组件。
烘培光可以用来表示局部环境光,而不是功能齐全的光照。Unity在运行时之前预计算这些光照的照明,并在在任何运行时灯光计算中都不会考虑它们。这意味着烘培光没有运行时开销。
Unity将烘培光的直接和间接光烘培到光照贴图(照明静态GameObject)和光探测器(照亮动态GameObject)。即使在动态GameObject(参见Wikipedia: Specular highlight了解更多信息)上,烘培光也不能形成镜面光照效果。烘培光不会响应玩家的动作和场景中发生的事件。它们主要用来增加黑暗区域的亮度,而不用调整场景中所有光照。
烘培光也是唯一不能从动态GameObject向动态GameObject投射阴影的光照类型。
烘培光的优势
将静态GameObject向静态GameObject投射的高质量阴影存储到光照贴图中,而不增加成本。提供间接照明
静态GameObject的所有光照只形成一个可以从着色器的光照贴图中获取的纹理。
烘培光的缺点
没有实时直接光(也就是说没有镜面光照效果)动态GameObject不能向静态GameObject投射阴影
只能使用光探测器得到静态GameObject向动态GameObject投射的低分辨率阴影
与实时光相比,光照贴图纹理会占用更多内存,因为光照贴图需要额外包含直接光照信息
技术细节
对于烘培光,Unity预处理除了从相机到表面这段光线以外的所有光线路径。查看文档光照模式了解更多关于光照路径的信息。烘培模式:所有光照路径会被预处理
Unity会预处理直接烘培光,也就是说在运行时Unity不知道光照的方向信息。少量的纹理操作会处理场景区域烘培光的所有光照计算。没有方向信息,UnityUnity不能进行镜面反射的计算。如果要得到镜面反射,可以使用反射探测器或者混和光或者实时光。查看文档directional light maps了解更多内容。
烘培光无法在运行时照亮动态GameObject。动态物体从烘培光获取光照的唯一方法是通过光探测器。这是烘培光和任何Subtractive mode Mixed Lights的唯一区别(除了主要方向光),Subtractive模式的混和光会在运行时为动态GameObject计算光照。
2017-06-08发布 limited editorial review
光照模式在5.6增加
相关文章推荐
- mysql database manual(mysql数据库手册)
- Unity中C#和Java的相互调用实例代码
- 详解 android 光线传感器 light sensor的使用
- C#中Socket与Unity相结合示例代码
- Unity编辑器下重启的方法
- 在Unity中捕捉Android的常用按钮返回事件
- unity5.6 导出gradle工程 Android Studio 导入问题及处理方法
- unity实现多点触控代码
- 在Unity中实现动画的正反播放代码
- Unity UGUI教程之实现滑页效果
- unity实现摄像头跟随
- 浅谈Unity中IOS Build Settings选项的作用
- MacOS系统下Unity启动黑屏的解决方法
- Unity iOS混合开发界面切换思路解析
- Unity的lua项目为Tolua# 编译protobuf
- 搭建gitlab lfs管理unity 源码
- Unity3D上路_01-2D太空射击游戏
- Unity3D上路_02-第一视角射击游戏
- Unity3D上路_03-塔防游戏