用于移动物体的统一烘焙灯

Posted

技术标签:

【中文标题】用于移动物体的统一烘焙灯【英文标题】:unity bake light for moving objects 【发布时间】:2016-03-06 10:30:48 【问题描述】:

我是 Unity3D 的新手,在界面中感觉有点迷失,所以欢迎详细说明。

我有一些元素(在搅拌机中建模的模型预制件)我想使用烘焙光进行预渲染,但之后我想四处移动。游戏将在手机上运行(谷歌纸板)。

我不关心光线的变化,因为它不会改变那么多。例如墙上的一张可以“打开”以显示秘密通道的图片。这张照片在太空中不会有太大变化,如果它的闪电有点偏离……没关系。

驾驶舱仪表也是如此。他们有自己的灯,我想烤它们。但随后驾驶舱将在现场移动。

我尝试将这些元素标记为静态,然后渲染,然后取消标记静态标记。到目前为止,它有点工作。我点亮了物体,我可以移动它们但是,光线取决于物体的方向!当我旋转物体(烘烤后)时,它的亮度取决于角度......我希望它是静态光照!或者至少,当它处于光被烘烤时的位置时,会有预期的闪电。为什么我把它对着灯转动时它会亮?

这里我展示了对象的属性

以及导入模型的属性

【问题讨论】:

【参考方案1】:

简单的答案,如果光照被烘焙,光照保持不变,它的烘焙。这是烘焙光仅用于静态对象的主要原因。

解决方案, 将环境光遮蔽烘焙到 3D 包中的对象中,并让对象保持动态统一,因为它是动态的! (你正在移动它)。这种方式将为您提供在 3D 包中准备好的柔和阴影,并且仍然可以在 Unity 中使用像素照明

【讨论】:

如果光是烘烤的,为什么我转动图片时照明会改变? (看图片,旋转挂在墙上的图片会变亮)场景中根本没有实时灯光。无论如何,你能开发“在你的对象中以 3D 封装烘焙环境光”吗?? 你必须将光照变化与镜面反射或其他着色器效果混淆,否则 Enlighten 系统中存在内部 Unity 错误(目前有很多) 我做了最奇怪的修改,我在空间中转动图片,设置为静态,烘焙灯光,取消设置静态,转回原位,BAM 现在它亮了。所以确认。物体的亮度取决于它的旋转。这对那里的任何人都有意义吗? 你不需要选中/取消选中静态,你可以简单地勾选 Lightmap static only(在 Statick 复选框右侧的小菜单下),这将关闭静态批处理,你将能够移动游戏对象 太棒了!这是一个很好的提示 :) 知道为什么当我转动它时“Lightmap static”元素的亮度会发生变化吗?【参考方案2】:

我找到了! 您在定向模式下烘焙(镜面反射或非镜面反射)。 当你在定向烘焙时,你永远不能在之后旋转对象,否则它会完全打乱定向烘焙。

【讨论】:

这就是解决方案。在场景选项卡内的照明设置中,将“定向模式”从定向更改为非定向。 unity2020.1.8f1

以上是关于用于移动物体的统一烘焙灯的主要内容,如果未能解决你的问题,请参考以下文章

Unity(四十五):光照烘焙反射探头

如何统一检查最近物体的颜色?

Kotlin 统一移动开发?已经开始支持 iOS 和 Web 开发

如何统一找到数组中第二近的对象? [复制]

如何在统一脚本中旋转我的 3d 对象的边缘点

寻路统一中的循环运动系统