2015-11-06 57 views
2

在SceneKit编辑器中“烘烤”选项的用途是什么?它对性能有影响吗? enter image description here在SceneKit中做些什么

类型提供2个选项:环境光遮蔽和光照图

目的地提供:纹理和Vertex

回答

2

我从大学时代记住的: 烘焙实际上是在3D渲染和纹理的过程。你有两种烘焙:纹理烘焙和物理烘焙。

纹理烘焙: 您计算一些数据并将该数据保存到纹理。你在你的材料上使用它。这样可以缩短渲染时间。每一帧,一切都被一次又一次地计算出来。如果你有动画,那就浪费了很多时间。

物理烘焙: 您可以像上面的烘焙一样预先计算物理模拟,并使用该数据。例如,你在刚体中使用它。

+0

哦,我明白了。谢谢。 SceneKit提供Vertex烘焙,这可能是物理烘焙。我现在正在运行Light Map烘焙。我可以听到电脑真的很难做到这一点。 – brumbrum

+0

因此,在我的3D场景中烘烤每一个物体之后,我应该期待剧烈的性能提升吗? – brumbrum

+0

你只能烘烤不需要改变的照明,或者只要有任何动作就会不正确。 – Jessy

3

对我来说,它会使Xcode崩溃。它应该将光照(特别是阴影)渲染到物体上的纹理,因此您不需要静态光源。

理论上,这应该意味着在场景中需要的所有东西都是用于在移动的物体上创建动态光照的灯光,并且您可以保存用静态几何体上的静态灯光填充场景所需的所有计算。

在性能方面,是的,烘烤照明可以在性能上产生巨大的跳跃,因为它可以节省您创建环境光,遮挡和直接阴影以及柔和阴影的所有复杂计算。

如果您实时使用环境遮挡和柔和阴影,您会看到非常低的帧速率。

烘焙的可能性远远超出您用超级计算机实时获得的质量,特别是在全局照明方面。

奇怪的是,Scene Kit有一个烘焙按钮。它从来没有为我工作,总是崩溃的Xcode。但事情是......为了从烘烤中获得最大收益,您需要成为一名3D艺术家,在这种情况下,您会更倾向于在3D设计应用中进行烘焙。

3D设计应用程序的照明解决方案比最佳场景套件照明更好几个数量级。我无法想象在Scene Kit中真的需要烘焙。开发团队花费时间是一件奇怪的事情,因为即使是最便宜的3D设计应用程序所提供的质量也不会接近。

+1

我意识到这个线程已经有一年了,但如果有人正在阅读并且想知道,那么SceneKit编辑器在Xcode 8.1中比在7中更稳定,而且现在烘焙按钮工作得非常好。你需要至少有一个模式设置为“静态”的灯才能使阴影烘焙起作用(如果没有静态灯,错误消息会提醒你)。 – OliverD

+0

我会试试看,这些日子之一。对他们是否使用它在购物车演示中制作光照贴图感到好奇。 – Confused