【Unity】5.X灯光烘焙与4.X在实际应用中的区别和注意事项

2024-03-01 16:48

本文主要是介绍【Unity】5.X灯光烘焙与4.X在实际应用中的区别和注意事项,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、 先说说 Unity4.X 烘焙面板里常用的参数



Quality 烘焙质量一般会选择高
Bounces 反弹 这个值一般选 1,如果选 2,烘焙的时间会增长 50%左右,所以设置这个值要谨慎。
Sky Light Intensity 天空光强度 这个一般我也不会设置的太高
Bounce Boost 反弹增强,同一单位面积内增大光的反射数量,相比较来说,这个值增大会直接影响渲染时间。
Bounce Intensity 增强光的反射强度
Contrast Threshold 对比度,这个只是偶尔会调。
下面是我烘焙大场景时用到的参数,基本是在效果和时间上达到了一个合理的平衡点。


二、 再说说 Unity5.X ,和 4.X的区别,首先光照烘焙技术就不同 


Unity4.X  版本采用的是 Autodesk 的 的 Beast  技术
Unity5.X  版本采用的是 PowerVR Ray Tracing 和 和 Enlighten  技术 , 所以 Lighting Window  面板里的参数 差别就很大 。
整体的参数介绍这个官网的 网址里有 ,
http://docs.unity3d.com/Manual/GlobalIllumination.html
我只说说常用的 。
(一)Object  面板

Lightmap Static : 必须把烘焙的物体设置成静态
Scale in Lightmap : 数值的大小与该物体的表面积有关,这个值影响烘焙时间,值越大时间越长。(效果如下图)
Scale In Lightmap 设置成 0.1 时的效果


Scale In Lightmap 改成 1 时的效果
(这个值也影响光影图的数量)


Preserve UVs: 如果物体没有在 3dmax 里展好 UV,那么这里必须勾选。
(二)Scene 
面板


Skybox :会直接影响你的环境光
Ambient Source :环境源,这里选 的 skybox
Ambient Intensity: 环境光的强度值,也就是环境光的亮度值
Reflection Source :反射源,这是 Unity4.X 里没有的。烘焙后会在场景文件的同名文件夹中多出一个名为
LightmapSnapshot 的文件。
Realtime Resolution :实时分辨率,这个物体所产生的 GI 对其它物体的影响程度,值越大影响越大。例如
Realtime Resolution 参数设成比原默认的小 10 倍即 0.2 ,
这个值调成 1 后,墙上的绿玻璃颜色,能更多的影响地面了



Realtime Resolution 参数改成 0.4 后的效果绿色墙所产生的环境光,影响范围变小了。


CPU Usage :选的默认。
Baked Resolution :烘焙分辨率,如果数值是 10,那么就是每个单位里分布 10 个纹理元素,实际测试的效果如下
Baked Resolution 的参数值调成 10 后,阴影的边变实了


Baked Resolution 的参数值调成 1 后,阴影的边变的很虚了


Indirect Intensity :间接强度,这个和 unity4.x 里的参数有些像,可以简单的理解为光的反射强度。
Bounce Boost :反弹强度,同一单位面积内增大光的反射数量,相比较来说,这个值增大会直接影响渲染时间。
Default Parameters :默认参数,这里还可以自己创建自己的参数。一般情况在预烘焙时选择最低设置。
Atlas Size:烘焙图的大小,以前 4.X 版本只能通过脚本来调整,现在好了。
(三)灯光参数


这里需要注意的是 Baking 选项里要设置成 Baked ,否则烘焙不起作用。
剩下的两个参数,基本和 Unity4.X 的参数功能相同。
注意下面这个问题



最后说一下,下面这几个参数一定要注意,它们影响烘焙速度和光影图数量,当初就在这上面吃过亏,场景太大,
参数没调小,烘了一晚上啥也没出来。
“Scale In Lightmap  、Realtime Resolution 、Baked Resolution 、Atlas Size”
总体来讲要想提高烘焙速度,就从这 Scale In Lightmap 、Realtime Resolution、Baked Resolution 三 个参数入手基本就可以了。
其实升级到 Unity5  有很多问题,很多以前的脚本、插件都不好用,都需要我们一步步解决。
跑完一次后,调整参数后,再跑,速度就会快很多。
每个物体的“Scale In Lightmap” 参数在跑第一遍的时候可以先设置成 0 ,这样跑的快一些。

这篇关于【Unity】5.X灯光烘焙与4.X在实际应用中的区别和注意事项的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/763133

相关文章

MySQL中VARCHAR和TEXT的区别小结

《MySQL中VARCHAR和TEXT的区别小结》MySQL中VARCHAR和TEXT用于存储字符串,VARCHAR可变长度存储在行内,适合短文本;TEXT存储在溢出页,适合大文本,下面就来具体的了解... 目录一、VARCHAR 和 TEXT 基本介绍1. VARCHAR2. TEXT二、VARCHAR

利用Python操作Word文档页码的实际应用

《利用Python操作Word文档页码的实际应用》在撰写长篇文档时,经常需要将文档分成多个节,每个节都需要单独的页码,下面:本文主要介绍利用Python操作Word文档页码的相关资料,文中通过代码... 目录需求:文档详情:要求:该程序的功能是:总结需求:一次性处理24个文档的页码。文档详情:1、每个

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二

Java 缓存框架 Caffeine 应用场景解析

《Java缓存框架Caffeine应用场景解析》文章介绍Caffeine作为高性能Java本地缓存框架,基于W-TinyLFU算法,支持异步加载、灵活过期策略、内存安全机制及统计监控,重点解析其... 目录一、Caffeine 简介1. 框架概述1.1 Caffeine的核心优势二、Caffeine 基础2

使用Node.js和PostgreSQL构建数据库应用

《使用Node.js和PostgreSQL构建数据库应用》PostgreSQL是一个功能强大的开源关系型数据库,而Node.js是构建高效网络应用的理想平台,结合这两个技术,我们可以创建出色的数据驱动... 目录初始化项目与安装依赖建立数据库连接执行CRUD操作查询数据插入数据更新数据删除数据完整示例与最佳

如何正确识别一台POE交换机的好坏? 选购可靠的POE交换机注意事项

《如何正确识别一台POE交换机的好坏?选购可靠的POE交换机注意事项》POE技术已经历多年发展,广泛应用于安防监控和无线覆盖等领域,需求量大,但质量参差不齐,市场上POE交换机的品牌繁多,如何正确识... 目录生产标识1. 必须包含的信息2. 劣质设备的常见问题供电标准1. 正规的 POE 标准2. 劣质设

python中getsizeof和asizeof的区别小结

《python中getsizeof和asizeof的区别小结》本文详细的介绍了getsizeof和asizeof的区别,这两个函数都用于获取对象的内存占用大小,它们来自不同的库,下面就来详细的介绍一下... 目录sys.getsizeof (python 内置)pympler.asizeof.asizeof

Vue和React受控组件的区别小结

《Vue和React受控组件的区别小结》本文主要介绍了Vue和React受控组件的区别小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录背景React 的实现vue3 的实现写法一:直接修改事件参数写法二:通过ref引用 DOMVu

PHP应用中处理限流和API节流的最佳实践

《PHP应用中处理限流和API节流的最佳实践》限流和API节流对于确保Web应用程序的可靠性、安全性和可扩展性至关重要,本文将详细介绍PHP应用中处理限流和API节流的最佳实践,下面就来和小编一起学习... 目录限流的重要性在 php 中实施限流的最佳实践使用集中式存储进行状态管理(如 Redis)采用滑动

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired