Unity Bakery使用说明(二)
灯光介绍
在场景渲染中,灯光是十分重要的,Bakery定义了6种灯光分别是:
1.Directional Light (直射光)
2.Skylight (环境光)
3.Point Light (点光)
4.Atea Light (区域光)
5.Spotlight (聚光)
6.Volume (体积烘焙)
Directional Light (直射光)
无限远的定向光(例如太阳)
Color:颜色。
Intensity:强度,线性颜色乘数。
Shadow spread: 阴影扩散,光源的大小,或者简单地说,阴影模糊度。0 = 最大锐利阴影,1 = 最大模糊阴影。从技术上讲,它从单条射线内插到更宽的射线锥。
Shadow samples:阴影样本,影响阴影质量。Shadow Spread 值越小,清晰图像所需的样本就越少。太阳阴影的典型值是从 1 到 16。将样本设置为 0 将使该光的阴影消失。
Bitmask:位掩码,用于排除此光源影响特定光照贴图组的切换列表。
Indirect intensity:间接强度,此灯的非物理 GI 乘数。对于自然光,应该为 1,但可以针对更多风格化的场景进行修改。
Texture projection:纹理投影,在光照上投影一个乘法平铺纹理。可用于模拟远处的云阴影。
如果同一个对象同时启用了 Unity 和 Bakery 光源,但它们不匹配,则会出现两个按钮:
将光照贴图与实时匹配:将通用设置从 Unity 灯光复制到 Bakery 灯光。
实时匹配光照贴图:将常用设置从 Bakery 灯复制到 Unity 灯。
Skylight (环境光)
无限远的阴影环境光(天空)。
Sky texture:天空纹理,可选的立方体贴图资源,例如 HDRI 全景图,以影响来自不同方向的照明颜色。
旋转天光的 GameObject 将相应地旋转立方体贴图中的光照。
Samples:样本,影响阴影质量。典型值为 8 到 32。
Hemispherical:半球,如果启用,照明将仅来自上方(上半球)。否则从各个方向。
如果天光的设置和当前场景的天空盒不匹配,会出现两个按钮:
将此灯光与场景天空盒匹配:将常用设置从活动天空盒材质复制到面包店天空灯。目前它只能匹配使用“Skybox/Cubemap”或“Skybox/Bakery 天空盒”着色器的天空盒。
将场景天空盒与此灯光匹配:将常见设置从面包店天空灯复制到场景天空盒。
Point Light (点光)
点光源,没有面积。尽管物理上不可能,但它对游戏很有用,并且是匹配 Unity 点光源和聚光灯的唯一方法。
Shadow spread:阴影扩散,阴影模糊。尽管点光源没有面积,但通常仍希望它们具有模糊的阴影。为此目的,模拟阴影,就好像它们是从球形区域光投射的一样。该参数定义了这种虚拟球体的半径,直接影响模糊度。
Phyaical falloff:物理衰减,如果启用,将使用正确的平方反比衰减,并在限制附近附加衰减。否则将尝试模仿 Unity 的衰减。
Falloff min size:衰减最小尺寸,在点光衰减部分了解更多信息。
Range:范围,如果禁用物理衰减,则等于 Unity 的光照范围。如果它被启用,只会稍微淡化边缘的物理衰减。
Samples:样本,影响阴影质量。典型值是从 1 到 512。将样本设置为 0 将使该灯光的阴影消失。
Projection mask:投影遮罩,遮罩/cookie 的类型。选项:
Omni:无遮罩,相当于Unity的Point Light。
Cookie:cookie 纹理投影。其他选项:Cookie 纹理:2D 纹理资源。Bakery 包含原始 Unity 的 Spot Light 纹理(名为 ftUnitySpotTexture),您可以使用它来模仿它。Angle:纹理投影角度(类似于Unity的Spot Light)。
Cubemap:立方体贴图 cookie 投影。其他选项:
投影立方体贴图:立方体贴图资源。
IES:照明由 IES 文件数据调制。其他选项,IES 文件:扩展名为 .ies 的文件。
如果同一个对象同时启用了 Unity 和 Bakery 光源,但它们不匹配,则会出现两个按钮:
将光照贴图与实时匹配:将通用设置从 Unity 灯光复制到 Bakery 灯光。
实时匹配光照贴图:将常用设置从 Bakery 灯复制到 Unity 灯。
Volume (体积烘焙)
生成 3D 纹理,存储每个体素的光探针(L1 球谐函数和阴影掩模),使其成为常规 Unity 光探针的可行替代品。
Unity 光探头 |
Unity LPPV |
Volume |
|
手动放置每个探头 |
是的 |
是的 |
不 |
在一个对象上插入多个探针 |
不 |
是的 |
是的 |
运行时可移动 |
不 |
不 |
是的 |
可以放入预制件 |
不 |
不 |
是的 |
完整的脚本 API |
不 |
不 |
是的 |
铃声 |
可能的 |
可能的 |
固定的 |
去噪 |
不 |
不 |
是的 |
运行时开销 |
CPU:低;显卡:低。 |
CPU:中;GPU:中等。 |
中央处理器:无;GPU:中等。 |
Bakery Volume 是一个与一组 3D 纹理(如果需要,3 个 SH 纹理和一个阴影蒙版)链接的边界框,使其非常易于使用和编写脚本。Volume可以在运行时轻松交换、移动、加载或卸载或链接到预制件。他们也不需要任何光探头组和手动探头放置;整个体积都充满了均匀的探针体素网格。与光照贴图相同的方式自动修复光/阴影泄漏(虽然薄的双面墙可能是大体素尺寸的问题,但可以通过在不同侧面使用不同的体积来避免)。由于体素网格的均匀性,还可以对它们应用类似光照贴图的去噪,这是常规光照探针无法做到的。此外,Bakery 着色器使用Geomerics 采样技巧为了完全消除“振铃”伪影,球谐函数有时会在高对比度 HDR 照明下产生。
因此,Volumes 可以为动态对象(即来自静态对象并影响动态对象的照明,而不是相反)生成干净、详细、高质量的烘焙照明。
Volume的唯一缺点是更高的每像素着色成本。成本类似于 LPPV(根据屏幕上受阴影体积影响的像素数量进行缩放),但与 LPPV 不同的是,Volume本身在烘焙后永远不会更新。可以通过稍微重叠它们来避免多个体积混合。
聚光和区域光和其他的光用法和原理是差不多的就不做解释。此外还有一种作为光源,在unity中就是物体自发光,bakery也定义了Light Mesh可以实现物体自发光的效果。但是他和材质自发光还是有区别的。
Bakery Light Mesh
任何形状的发射网格。应与 Mesh Renderer 组件或设置为区域模式的 Light 组件一起使用。
Light Mesh和自发光材质的区别
发光材料:
在 GI 计算期间传播光,因此是“免费的”,无论有多少网格是自发光的。
取决于 GI 样本数,小而亮的灯光可能会给出不准确的嘈杂结果。
由于面包店中 GI 的工作方式,必须占用光照贴图中的空间,因此可能会浪费它。这也意味着自发光对象需要有效的 UV 并启用“投射阴影”。
Light Mesh:
照明是为每个灯光单独计算的,因此比发射材料慢。
旨在为小而亮的灯光提供干净的效果,即使距离它们很远。
不占用光照贴图中的空间。
Unity Bakery使用说明(二)相关推荐
- Unity Bakery使用说明(一)
什么是Bakery 为什么用Bakery Bakery 是一款可用于生产的高端 GPU 光照贴图器,其设计考虑了灵活性和性能. 修复各种烘焙伪影,例如接缝.光/阴影泄漏.不正确的阴影终结器等.烘焙光照 ...
- 蓝鸥Unity开发基础二——课时20 接口
蓝鸥Unity开发基础二--课时20 接口 一.接口 使用interface关键字定义接口 接口定义一组成员单不直接实现它们 二.实现接口 实现接口的任何类都必须实现其所有的成员方法 接口不能直接实例 ...
- Baumer工业相机堡盟工业相机软件CameraExplorer常见功能使用说明二
Baumer工业相机堡盟工业相机软件CameraExplorer常见功能使用说明二 Baumer工业相机 Baumer工业相机CE软件图像/视频存储功能 Baumer工业相机CE软件记录日志文件功能 ...
- Unity网络(二)-Unity3D中的网络
正所谓:没有网络是没有灵魂的 欢迎关注公众号:雷潮课堂 Unity3D中的网络 一.WWW 1-1 Get 1-2 Post 1-3 案例(网络下载,本地存储与读取) 二.UnityWebReques ...
- [转]Unity 之 创建二维码
最近看到公司里好多人在分享网页链接的时候都用二维码相互传递,然后就突然想到如果在Unity的项目中需要实时创建二维码进行分享链接的时候要怎么办. 然后就开始在网上搜了一下"Unity 创建二 ...
- Unity 之 创建二维码
关注公众号,获取更多干货. 最近看到公司里好多人在分享网页链接的时候都用二维码相互传递,然后就突然想到如果在Unity的项目中需要实时创建二维码进行分享链接的时候要怎么办. 然后就开始在网上搜了一下& ...
- python+unity表情驱动二(打包成exe)
python+unity表情驱动工具二(打包成exe) 使用pyinstaller在控制台打包 工具的使用效果 使用pyinstaller在控制台打包 这里并没有使用auto-py-to-exe界面工 ...
- Simple Dynamic Strings(SDS)源码解析和使用说明二
在<Simple Dynamic Strings(SDS)源码解析和使用说明一>文中,我们分析了SDS库中数据的基本结构和创建.释放等方法.本文将介绍其一些其他方法及实现.(转载请指明出于 ...
- Unity扩展编辑器二
Unity支持自行创建窗口,也支持自定义窗口布局,在Project视图中创建一个Editor文件夹,在文件夹中创建一条脚本 自定义窗口需要让脚本继承EditorWindow在设置MenuItem,此时 ...
最新文章
- 13.PHP中循环结构之foreach循环语句(任务一)
- 实践证明m1上面的windows可以说一无是处
- python3串口通信16进制_STM32串口通信——16进制数形式
- ViewPager实现页面切换
- iNeuOS工业互联网操作系统,智慧用电测控应用案例
- C++《STL和泛型编程》算法accumulate、for_each、sort简单使用例子
- 网站左边栏制作的小技巧
- php 计算字段的和,php – foreach中计算列的总和
- 复变函数论里的欧拉公式
- carry函数在C语言中用法,carry的用法总结大全
- 2021年中国开源优秀人物揭晓
- java实现通过浏览器方式下载文件及多个文件
- Cocos精品《热血传奇》|五千个日夜 同一个传奇
- 【openstack-rally】使用rally执行tempest api测试并导出测试报告
- android简单文件管理器源码,文件管理器-android源代码
- Arduino 声音传感器例程
- 杰理之内部flash【篇】
- 富文本编辑vue插件vue-quill-editor
- 启动电脑QQ遇到QQ安全防护进程,且Windows无法启动QPCore Server
- 带护甲的VN1630A/VN1640A来啦