Blender中Cycles 渲染设置指南

您所在的位置:网站首页 blender配置文件 Blender中Cycles 渲染设置指南

Blender中Cycles 渲染设置指南

2023-03-09 14:48| 来源: 网络整理| 查看: 265

Cycles 常规设置

在最顶部,我们发现了一些不属于任何类别的常规设置。在这里我们可以指定渲染引擎。默认情况下,我们可以在三个引擎之间进行选择。

EeveeCycles工作台

如果我们安装并激活了其他渲染引擎,我们可以从此列表中选择它们。在这种情况下,我们特别关注 Cycles。Blender 的主要光线追踪渲染引擎。

接下来,我们有功能集。在 Cycles 中,我们可以使用SupportedExperimental。如果我们切换到实验性,我们将获得一些可以使用的附加功能。最值得注意的实验功能是细分曲面修改器的自适应细分。

这是一项高级功能,允许细分对象根据几何体与相机的接近程度进行细分。我们的想法是,我们可以通过添加更多靠近相机的几何体来提高性能,因为它大部分可见,并保存远离相机的几何体,这样我们就可以节省性能。

顺便说一下,如果你喜欢这篇文章,我建议你看看我的电子书。它帮助许多人更快地学习 Blender 并加深了他们对这款出色软件的了解。

如果我们启用实验性功能集,一个新的部分会出现在我们的渲染设置中,称为细分。如果我们也转到修改器堆栈并添加一个细分曲面修改器,您会看到界面已更改,我们可以启用自适应细分。

可以在 GPU 和 CPU 之间进行选择。此设置取决于您的硬件。如果您有受支持的 GPU,您很可能希望将其用于渲染。在大多数情况下,它可以提高性能。

然而,在我们可以使用 GPU 之前,我们需要进入我们的首选项并设置我们的计算设备。在这里我们还将查看 Blender 是否识别出您系统中任何支持的 GPU。

转到Edit->Preferences并找到System。在顶部,您会找到 Cycles 渲染设备部分。如果您有受支持的 Nvidia GPU,则可以使用 Cuda。

从 Blender 2.90 版本开始,Optix 应该可以与 NVidia 的旧系列显卡一起使用,根据发行说明一直追溯到 700 系列。这是更快的选择,但缺少一些功能。

根据blender手册,Cuda 支持这些功能,但 Optix 不支持。

烘烤分支路径追踪环境光遮挡和斜角着色器节点结合 CPU 和 GPU 渲染

此外,这些功能在 GPU 上不受支持,您必须使用 CPU 才能启用这些功能。

开放着色语言高级体积光采样

如果您是一名普通jishu 师,您最需要的功能是烘焙、环境光遮蔽和斜角节点。但是您可以随时在 Cuda 和 Optix 之间切换。

对于 AMD 显卡,请使用 OpenCL。OpenCL 的缺点是我们每次打开一个新的 blend 文件时都必须编译内核。不要问我它实际上做了什么,但它对用户意味着我们可能必须等待,有时需要等待几分钟,然后才能开始渲染。您的 CPU 会执行此计算,因此它取决于场景的复杂性和 CPU 的速度。

如果您有集成显卡,它很可能不受支持,您将不得不使用 CPU 进行渲染。在大多数系统中,这是最慢的渲染计算设备。

您可以从 Blender 的开放数据项目中找到最新数据,该项目收集了来自社区基准的数据。

关于设备已经足够了,但是如果启用了 CPU,则可以使用开放着色语言选项。您需要选中此项以启用对 OSL 的支持。OSL 是一种脚本语言,我们可以使用它来编写自己的代码来对着色器进行编程。

如何不购买硬件,提升Blender的渲染速度?

blender项目渲染慢,渲染卡顿,本地渲染资源不足,可使用渲云云渲染,支持cpu及gpu渲染,可批量渲染,也可联机渲染,速度快效率高,大幅度降低成本,不占用本地的电脑做其它的工作,根据需求选择合适的配置,不用在本地购买硬件配置,按需使用,大幅度提高渲染速度,降低资金投入,提升工作效率,将更多的时间花费在创作创意上面。

渲云云渲染支持多种软件和渲染器、支持多种通道渲染,可根据需求定制渲染方案,支持高参数大图无忧渲染,可在手机/电脑实时进度查看,可通过手机端微信可查看实时渲染进度、下载和分享结果文件。

此外也可以使用赞奇云工作站,通过赞奇云工作站打造云制作平台,实现权限管理、流程管理、 项目进程管理、任务信息同步,实现异地协同制作,同时提供安全的存储服务,有效的报障数据 的高速传输,并避免数据泄露。

通过云赞奇工作站、软件中心、云盘、渲云云渲染 打通 素材上传 -> 云上制作坐席置备 -> 设计 -> 渲染 ->合成 呈现全流程环节赞奇云工作站专注于在线云端电脑解决方案,简单高效,轻松上云,致力解决企业及个人用户普遍的电脑配置不足问题,让办公更便捷。高端性能机器自由选择:使用专业级显卡,稳定性强,内存大,对专 业软件有针对性优化,可根据自身应用需求 量选择对应的显卡数量Cycles采样设置

我们将从讨论示例开始,然后跳回集成器。

Samples是一个数字,表示我们让 Cycles 从相机射入场景以最终击中灯光、背景或因为光线超出允许的反弹而终止的光线数量。

将光样本拍摄到场景中的目的是收集有关场景中所有内容的信息,以便我们可以为最终图像中的每个像素确定正确的颜色。

它通过根据被击中的表面以及在每个位置检测到的材料特性来回弹跳来实现这一点。

示例是 Cycles 中最著名的设置。它们被标记为renderviewport。渲染计数用于最终渲染,视口样本用于渲染视口着色模式。

如果您的图像的噪点超出您的承受范围,或者为了准确无噪,我们可能需要更多样本。但是在我们将样本数量增加到疯狂数量之前,我们应该考虑调整很多其他工具和设置。其中一些,我们将在本文中探讨。

但一般来说,如果您的场景设置正确,我认为您不需要超过 1000 个样本。但有些艺术家认为即使是一千也太高了。

在低端,我很少使用少于 200 个样本。但话又说回来,我不渲染很多动画。当发生这种情况时,我可以对该规则进行例外处理。

对于视口示例,我们可以将其设置为零以进行连续渲染。对于最终渲染,这略有不同。为了连续渲染最终渲染,我们转到性能部分,找到 tiles 子部分,这里我们有Progressive refine。这会将常规的图块渲染更改为使用无限样本一次渲染整个场景,从而允许用户在无噪声时取消渲染。

Cycles积分器

默认情况下,我们使用路径跟踪集成器。虽然仍然很复杂,但这是更基本的积分器,无论我们击中的表面具有什么属性,它都能为我们提供相等的光反射。它均匀地发射光线,使每条光线更快,但对于需要更多样本才能正确清理和消除噪声的表面属性,它可能比分支路径追踪的替代方法花费更长的时间。

另一方面,分支路径追踪将光线射入场景,但在第一个材质命中时,它会分裂光线并根据表面属性和光线使用不同数量的光线。

如果我们转到子样本小节,我们可以设置Cycles为每个第一次命中材料或特征使用多少光线。

在这里,我们将找到一长串独特的特征,我们可以在初始光线命中后定义样本计数。这里的数字是乘数。

因此,对于计数为 2 的漫反射子样本,它将采用渲染样本并乘以 2,并将此样本数用于漫反射材质组件。

假设我们在使光泽无噪声方面遇到困难,我们可以使用分支路径跟踪为光泽方式提供更多样本,以便它可以清除,同时不会在已经干净的漫反射路径上浪费计算。

老实说,我很少使用分支路径跟踪。因为 Optix 不支持它。所以相反,我经常只是提高样本。但是在那些情况下,当您坐在一个无法正确清除的动画中时,分支路径跟踪可能是一个选项。

自适应采样

自适应采样出现在 2.83 版本中。这个想法是,Blender 将感知何时噪音减少得足够多,因此停止渲染该区域,同时继续渲染需要更多样本才能变得无噪音的区域。

根据 2.83 发行说明,使用自适应采样时渲染时间减少了 10-30%。根据我自己的经验,我发现了同样的事情。通常,渲染时间会稍微快一些,而且我还没有一个渲染可以说出与不使用自适应采样有很大区别的渲染。

我们可以使用min samples设置设置最小样本数,不允许 Cycles 使用比此处指定的样本更少的样本。

当设置为零时,噪声阈值是自动的数字越低,Cycles 将保持渲染的时间越长,直到达到样本计数或噪声水平达到阈值。

降噪

在降噪小节中,我们可以为最终渲染器和视口设置降噪器。由于视口为每个样本实时降噪,我们可以设置一个起始样本,以便降噪器在计算出一定数量的样本之前不会启动。

对于视口,我们有三个选项。

自动的光学打开图像降噪

自动不是真正的选择。如果可用,它将只使用 Optix,否则将退回到 OpenImageDenoise。因为 Optix 是更快的选项,所以它具有更高的优先级,但它需要兼容的 NVidia GPU。

对于视口,它非常简单,启用,选择您的 AI 以及从哪个样本开始去噪。

对于最终渲染,它仍然并不复杂,您只需打开降噪,选择降噪器,Blender 就会为您生成无噪声渲染。

对于渲染降噪器,我们还有另一种称为 NLM 的替代方法。虽然其他选项是基于 AI 的降噪器,但 NLM 是一种传统的内置降噪器,它取决于我们为其提供的参数。一般来说,它不会像 Optix 或 OpenImageDenoise 那样提供令人满意的结果。

就个人而言,我认为 OpenImageDenoise 给出了绝对最好的结果。

无论如何,我们为渲染选择的降噪器也会影响降噪数据传递产生的数据。Optix 和 OpenImageDenoise 产生相同的通道,据我所知,它们看起来完全相同。

这些是通行证:

降噪正常去噪反照率去噪深度

另一方面,NLM 产生四个额外的通道:

去噪阴影去噪方差去噪强度降噪干净

当我们导出到另一个应用程序时,我们可能希望这些通道中的任何一个可用,但在 Blender 中它们很少被使用。使用 NLM,去噪法线、反照率和深度通常会出现颗粒状或模糊。

我们始终使用的唯一通道是 Denoising Normal 和 Denoising Albedo 以及如果我们完全使用降噪器会产生的噪声图像。

我们将它们与合成器中的去噪节点一起使用。去噪节点使用 OpenImageDenoiser 在后期去噪,而不是在渲染时以交互方式去噪。

因此,我首选的去噪方法是使用 Optix,以交互方式启用去噪数据传递,这样我就可以在后期使用 OpenImageDenoiser 和 Optix 生成的去噪数据传递。这样我就可以选择降噪器而无需渲染两次。

我们需要启用交互式降噪才能访问任何降噪器的降噪设置。当在渲染设置中激活交互式降噪时,我们可以在降噪部分的视图层选项卡中找到这些设置。请注意,我们也可以在此处关闭单个渲染通道的去噪。

先进的

这里我们从一个种子值开始,这是我们在 Blender 中看到的东西。它是一个改变随机分布模式的值。在这种情况下,它是 Cycles 积分器的随机分布。这将为我们提供整个图像的不同噪声模式。渲染动画时,时钟图标将在每一帧之间更改此值。这可以帮助我们将残留的噪点转变成胶片颗粒效果。

模式是样本的分布。您想要一个均匀但随机的分布,在 Blender 中有两种方法可以实现这一点。Sobol 和多抖动。Sobol 是目前的默认值,在大多数情况下它们之间的差异似乎不明显。虽然有时,一个或另一个以明显的优势脱颖而出,但对我来说,原因并不明显。

在研究这个问题时,我发现围绕这个问题进行了很多讨论,有时,多重抖动似乎有一个优势,但在大多数情况下,它似乎仍然是关于意见的。

有两种类型的多重抖动,如果您打开自适应采样,渐进式多重抖动将成为使用的模式,并且此设置将变灰。

方形样本复选框将采用我们的样本计数并将其乘以自身以获得最终样本计数。这只是计算样本的一种不同方式。

继续前进,使用最小光反射,我们可以覆盖所有单个光线类型的最低允许反射,当它设置为 0 时,它被禁用。

例如,如果我们将下面讨论的光路部分中的漫反射设置为 3,并且此处将最小光反射设置为 5,我们将使用五次反射。

当满足最小光反射时,贡献较少的光线将被终止。

最小光反射设置有助于降低噪点,尤其是在包含玻璃、液体和光滑表面的更复杂场景中,但渲染时间可能会受到很大影响。

最小透明反弹还有助于减少使用透明着色器的场景中的噪点。并不是说这不是,例如使用透射的玻璃着色器。

阈值是将被视为光的最小光量。如果光线低于此阈值,则将被视为没有光线。这样渲染引擎就不必处理贡献最少光量和浪费渲染时间的计算。

当我们使用分支路径跟踪时,我们有两个额外的高级设置。这些是采样所有直接光和采样所有间接光

就像我们可以通过分支路径追踪为不同的材料属性或特征提供不同数量的样本一样,我们可以在打开这些灯时为不同的灯提供不同数量的样本。

如果您选择一盏灯并转到对象数据属性,您将看到此处有一个样本计数。当使用分支路径跟踪并且这些设置已打开时,此样本计数将乘以此灯的 AA 样本。

在最底部,可以出现另一个设置,称为图层样本。如果我们转到层选项卡并打开覆盖部分,我们可以单独设置要为此视图层计算的样本数。如果至少一个视图层将此设置为零以外的任何值,则图层样本设置将变为可见。

它给了我们三个选择。

使用有界的忽略

设置为使用,我们将使用覆盖并将样本设置为视图层选项卡中的任何值。忽略将忽略视图层级别的任何示例覆盖。如果设置为有界,则计算两者中最小的数。

Cycles光路设置

与样本相比,光反射在细节上更近了一步。在这里,我们决定了射入场景的每条光线的最大反弹次数。

如果未打开,请展开最大弹跳数部分。我们有一个名为Total 的总体价值。当任何光线遇到此数量的反弹时,我们将其终止。

总值下方是单独的光线类型以及我们允许的每种光线类型的反弹次数。我发现在许多情况下这些值设置得太高,我们可以通过降低这些值来节省大量渲染时间。

这些是我通常开始的价值观。

总计:4漫反射:2光面:2透明度:4传输:4体积:0

大多数时候这适合我的工作。您可能需要根据您创作的艺术类型调整这些设置。这里有一些例子。

例如,如果我们使用许多带有透明着色器的对象。在这些情况下,太低的透明度反弹值将完全阻碍视图或使透明度投射阴影。这通常会导致材料看起来比我们想要的更暗,或者光线被杀死而不是继续穿过材料的黑点。

但是透明度也很昂贵并且会增加渲染时间,因此我们不想将其增加到超出我们需要的水平。

玻璃着色器可能会出现类似的问题。如果传输设置太低,我们可能会在玻璃上看到黑色或深色的人工制品。这在具有更多曲线和细节的异形玻璃中更为明显。

在光线透过窗户照亮的室内场景中,我们通常最好通过将玻璃与透明着色器结合来稍微伪造它。使用纯玻璃着色器通过对象过滤场景中的所有光线通常会给我们带来比其价值更令人头疼的问题。

只是一个附加说明。音量反弹为 0 时,它仍将允许单次反弹。当我们将其设置为任何更高的数字时,即等于允许的额外反弹或散射。

Cycles clamping

直射光和间接光。

这些值限制了样本记录的最大允许光量。当样本有可能失控并记录过高的数字,导致像素呈现白色时,这有助于减少渲染中的萤火虫。

虽然钳位会破坏光线的准确性,因此当我们遇到萤火虫问题时,它应该作为最后的手段。值为 0 将关闭钳位。

Cycles焦散

焦散是光线穿过水玻璃之类的物体并在相邻表面投射光图案时发生的光的作用。

它通常非常漂亮,效果理想。问题是它非常昂贵并且容易产生萤火虫。它还需要大量样本才能平滑。

如果您在场景中需要焦散,通常最好假装它,而不是让 Cycles 为您计算。因此,关闭这些是简化 Cycles 必须进行的计算的快速方法。

过滤器有光泽设置特别有用。这是我们平衡准确性和性能的另一个设置。Filter glossy 会给有光泽的组件一个模糊以减少噪音。

我发现在很多情况下,只需一点过滤器光泽度就可以让您减少光泽度反弹并以最小的准确性成本加快渲染速度。

但这取决于您对准确性的挑剔程度。就个人而言,我更喜欢漂亮的图像而不是准确的图像。

Cycles音量设置

在 Cycles 音量设置中,我们有视口和最终渲染的步进率以及最大步数设置。

步骤是体积内的一个点,根据着色器的类型,它是可能发生散射、吸收或发射的潜在位置。这种事件在一个步骤中发生的可能性主要基于密度。

我们曾经控制一个叫做步长的值。这是一个以米或搅拌器单位为单位设置的值。这将设置光线每次潜在反弹之间的体积距离。

现在,Blender 自动设置步长,而我们控制步长值。这是自动设置步长的乘数。

这意味着,以前,我们必须根据对象的大小来调整步长。现在,步进率是一个与步长相关的值,因此我们不再需要根据对象的大小来调整它,而是根据我们希望在内部发生反弹的频率来调整它体积而不管其大小。

值为 1 将保留 Blender 设置的步长,值为 2 将步长乘以 2,依此类推。

最大步数是一个安全网,这样我们就不会以无限步数结束。相反,一旦达到此步骤数,这些步骤就会终止。

Cycles头发设置

当我们在 Blender 中创建头发时,大多数设置将在粒子系统、粒子编辑模式和着色器中进行。但是,有一个设置对于整个场景是全局的。那就是头发的形状。我们这里有两个选择。

Frists,圆形丝带,将呈现为具有平滑法线的平面对象,因此它在弯曲时不会呈现尖锐的边缘。这是更快的选择。

我们可以设置曲线细分,同时使用此设置来平滑沿头发的曲线。

但是如果我们放大,我们会看到曲线是锯齿状的,有时我们会看到头发颗粒旁边的假象。所以,如果我们需要头发特写,我们最好选择第二个选项3D 曲线

渲染速度较慢,但​​当我们放大头发的近距离镜头时效果会更好。

Cycles简化设置

在简化设置部门,我们有两个相同设置的副本,一个用于视口,一个用于最终渲染。

之后我们有一个剔除部分。如果我们尝试在谷歌上搜索“剔除”以了解其含义,我们会得到以下答案:

“通过选择性屠宰减少野生动物数量。”

对我们帮助不大。此外,我真的不知道如何看待这是简化部分的事实。

最后我们将跳过油脂铅笔部分,因为它超出了本文的范围。但让我们从头开始。

在视口和渲染部分,我们有最大细分。该值会将场景中的任何细分曲面和多分辨率修改器限制为该细分数量。

一种基于这些修改器中的任何一个对象限制场景中几何体数量的好方法,而无需调整每个对象。

接下来是子粒子,这会将子粒子的数量乘以我们在此处设置的任何数量。所以,如果我们设置 0.5,那么我们所有粒子系统中只有 50% 的子粒子会被渲染。请注意,它仅适用于子粒子,而不适用于发射的粒子。

纹理限制会将使用的纹理大小减小到我们在此处选择的任何限制。当您处理大型场景并突然意识到您用完了内存来渲染它时,这非常方便。

AO 反弹有点特别。在设定的反弹次数后,它将阻止 Cycles 使用全局照明,然后将使用 AO 代替。

让我们回到剔除部分。它与动物没有任何关系。相反,这些设置将帮助我们自动移除摄像机视野之外以及距摄像机任何给定距离的任何对象。

对于要参与剔除的对象,我们需要为该特定对象启用剔除。为此,我们转到对象属性,找到可见性部分,在剔除子部分中,我们可以启用相机剔除和距离剔除。

这里有一个 Blender 小技巧,可以为所有选定的对象更改这样的设置,为活动对象设置您想要的设置,然后只需右键单击并选择复制到选定对象。

此外,为了在粒子系统上使用剔除,我们在我们分发的对象上启用剔除,而不是在发射器上启用剔除。

回到简化设置后,我们可以启用或禁用相机剔除和距离剔除。

对于相机剔除,这个值决定了我们剔除物体的相机视野之外的距离。您可以将其视为值越高,剔除开始前的余量就越大。

对于距离剔除,这是相反的方式。距离越高,我们允许对象渲染的距离就越远。请记住,值为 0 时,距离剔除被关闭。这意味着当我们从 0 变为一个较低的值(例如 0.001)时,我们从渲染所有内容到将距离限制为这个小得离谱的数字。本质上是从以 0 渲染所有内容到以 0.001 渲染几乎不渲染任何内容。

请记住,距离剔除不会移除相机视野内远离相机的对象。两者都处于活动状态时,距离剔除会根据距离将对象添加回来。

Cycles电影设置

在电影设置中最常用的设置是透明的。通过选中透明子部分,世界背景将呈现透明,但它仍将有助于照明。

在许多情况下,这是一个非常有用的设置。例如,我们可以在不同的背景上合成一个对象,或者我们可以使用它来渲染贴花,我们稍后可以将其用作材质的一部分。

启用透明子部分后,我们还可以选择将玻璃渲染为透明。这使我们能够在其他表面上渲染玻璃。粗糙度阈值将决定断点的粗糙度级别,我们改为渲染原始颜色。

让我们回到本节的顶部并介绍exposure。曝光设置决定图像的亮度。它允许我们提高或降低场景的整体亮度。

我们在颜色管理选项卡中找到了相同的设置。这里的区别在于胶片部分的曝光适用于图像数据,而色彩管理曝光适用于视图。

我们不会在 Blender 中看到差异,因为我们同时处理数据本身和视图。当我们将视图与数据分开时,差异就会变得明显。我们可以通过保存为不同的文件格式来做到这一点。

如果我们将渲染图保存为旨在作为最终产品的文件格式,例如 jpeg,我们将应用颜色管理,因此也会应用颜色管理曝光。但是,如果我们导出为用于连续工作的文件格式(例如 OpenEXR),我们将仅导出数据,而颜色管理曝光设置将不会成为导出的一部分。

差别很小,但如果您打算在另一个软件中进行额外处理,则很重要。

最后我们有像素过滤器设置。这与抗锯齿有关。该功能通过对比度模糊边缘和区域以获得更自然的结果,隐藏像素之间的锯齿状边缘。

默认的 Blackman-Harris 算法创建了一种自然的抗锯齿,在细节和柔和度之间取得了平衡。Gaussian 是一个更柔和的选择,而 box 禁用了像素过滤器。

像素过滤器宽度决定效果在对比像素之间延伸的宽度。

Cycles性能设置

性能部分有几个小节,这次,我们将从找到线程的顶部开始。

此部分仅适用于 CPU 渲染,我们可以更改将用于渲染的可用内核和线程数。默认情况下,Blender 将自动检测并使用所有内核。但是我们可以将其更改为固定并设置要分配的内核数。如果我们打算在渲染时使用计算机,将一些计算能力留给其他任务,这将非常有用。

tiles 子部分中,我们可以设置 tile 大小。我们处理一个像素数组来计算每个计算单元。对于每个图形卡或每个 CPU 内核。瓦片 X 和瓦片 Y 值将决定每个计算单元一次处理的每个块的大小。当一个图块完成渲染时,计算单元将被分配一个相同大小的新图块,直到整个图像被渲染。

通常,GPU 可以更好地处理大型图块,而 CPU 可以更好地处理较小的图块。

对于 GPU,您可以尝试 512x512 或 256x256 作为起点,对于 CPU,64x64 甚至 32x32 都是不错的起点。请记住,场景和您的特定计算单元可能具有非常具体的理想图块大小,但一般规则通常足以满足大多数日常使用。

只有一件事,如果您觉得本文有帮助,也许您会发现我的电子书也有帮助。它帮助许多人更快地成为更好的 3D 艺术家。

我们还可以设置选择图块的顺序。据我所知,这里没有性能影响。相反,这只是一个品味问题。

本节的最后一个设置是progressive refine。我们之前解释过这一点。但它的作用是允许我们一次渲染整个图像,而不是一次渲染一个图块。

这样我们就没有预定义的样本数量,而是对样本进行计数,直到手动取消渲染。如果您想在一夜之间留下渲染,这是一个不错的选择,对于动画,此设置将使我们一次渲染整个帧,但在手动取消之前不会渲染每一帧。相反,它将照常使用样本计数。

Cycles加速结构设置

这是一个高级部分,我并不完全理解,但我会尽力解释我所知道的。让我们从Spatial Splits开始。我发现的信息是它基于 NVidia 的这篇论文。

外部内容:Nvidia Spatial split paper

在本文中,他们证明了空间分割在所有测试用例中的渲染速度更快。但是渲染有两个部分,构建阶段和采样阶段。

在构建阶段,Blender 使用称为 BVH(边界体积层次结构)的东西来分割和划分场景以快速找到每个对象并查看光线在渲染过程中是否击中或错过了对象。

我的理解是,传统的 BVH 是一种更“蛮力”的快速划分场景的方法,在不同情况下最终会出现大量重叠,需要在采样阶段进行分类。

空间分割使用另一种计算量更大的算法,使构建阶段需要更长的时间,但最终,我们有一个 BVH 重叠明显更少,从而使渲染的采样阶段更快。

当 Blender 首次引入空间分割时,它并没有使用多线程来计算 BVH,因此在大多数情况下它仍然比传统的 BVH 慢。然而,空间分割在很久以前就是多线程的,应该不会再有这个缺点了。

然而,它仍然是一个较慢的构建时间,我的理解是构建时间总是在 CPU 上计算,所以如果你有一个快速的图形卡和一个像我这样相对较慢的 CPU,差异将非常小,因为你移动从某种意义上说,从 GPU 到 CPU 的工作负载。

我自己的结论是:如果 CPU 和 GPU 之间的性能彼此足够接近,则对复杂的单一渲染使用空间分割,其中渲染过程的采样部分很长。

对于更简单的场景,没有必要,因为构建时间会很短,您不会注意到差异。对于动画,Blender 将在每帧之间重建 BVH,因此构建时间与采样一样重要,在改进采样而不是构建时间方面,我们有更多的回旋余地。

下一个设置是使用头发 BVH。我对此的理解是,如果你的场景中有很多头发,禁用它可以减少渲染时的内存使用,但会以性能为代价。换句话说,如果您的场景有很多毛发而您无法渲染它,因为场景使用了太多内存,请使用它。

本节的最后一个设置是BVH 时间步长。此设置是在 Blender 2.78 版中引入的,它有助于提高使用运动模糊的场景的渲染速度。

这是一篇较早的基准测试 2.78 版文章,它展示了运动模糊如何在 CPU 上更快地渲染。这可能不再正确,也可能不再正确,因为从那时起 Cycles 发生了很多事情。

但简而言之,运动模糊轨迹越长,场景越复杂,BVH 时间步长就越高。根据上面的文章,值 2 或 3 似乎不错。

Cycles性能最终渲染设置

在这里我们找到两个设置,保存缓冲区和持久图像。关于这些的信息在 Internet 上很少,而且您找到的关于它们的信息通常都是旧的。经过一些研究和测试,这就是我的发现。

让我们从保存缓冲区开始。开启后,Blender 会将每个渲染帧保存到临时目录,而不是仅仅将它们保存在 RAM 中。然后它将从临时位置读回图像。如果使用许多通道和视图层,这应该可以在渲染期间节省内存。

但是,在我所做的有限测试中,我没有发现任何区别。

您可以转到“编辑”->“首选项”,然后在文件路径选项卡中找到标有临时文件的路径。这是这些文件将转到的位置。

它们最终将位于一个名为 blender 的子文件夹中,后跟一个随机数。在文件夹内,每个渲染都保存为一个以混合文件、场景和视图层命名的 exr 文件。

这些文件夹不会保留。它们仅限于当前会话。如果 Blender 正确关闭,Blender 将在关闭前删除此文件夹作为清理过程的一部分。

即使这些文件被加载回 Blender,我们仍然使用合成器中的 Layer 节点来访问它们,就像我们没有启用保存缓冲区一样。

持久图像将告诉 Blender在渲染完成后将加载的纹理保留在RAM中。这样,当我们重新渲染时,Cycles 就不必再次加载这些图像,从而在渲染时的构建过程中节省一些时间。缺点是在渲染之间,Blender 将使用比平时多得多的 RAM,并可能限制渲染之间其他任务的 RAM 可用性。但是,如果您有剩余的 RAM,请使用它并节省一些时间。

我发现这在渲染动画时也特别有用。如果禁用,Blender 将在每帧之间重新加载纹理。但是启用它,Blender 将保持这些图像在帧之间加载。

动画渲染完成后,我们可以取消选中此项,Blender 将立即释放内存。

Cycles性能视口设置

在本节中,我们找到可以通过限制分辨率帮助我们优化视口渲染的设置。通过更改像素大小,我们可以使绘制的像素更大。At1x 我们以 1x1 渲染它们。在 2x 时,我们以 2x2 像素大小等渲染它们。

如果我们去编辑->首选项并找到界面部分,自动选项将使用我们可以找到的界面比例。我们有一个分辨率比例值,可以改变界面的大小。

开始像素将设置开始时的像素大小,随着时间的推移,这将被细化为像素大小设置。

最后一个设置是去噪开始样本,这将使 Blender 等待,直到计算出这么多样本,然后才开始去噪以细化图像。

渲染设置之间存在巨大差异,并且很难在任何给定时间导航我们实际需要的内容。最后,我们只希望获得具有最大性能的正确外观,从而减少任何渲染错误。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3