c4d octane实时渲染速度慢

2023-04-29 12:34 综合百科 0阅读 投稿:小七

Cinema 4D 中 Octane 中的位移
第 3 部分:故障排除


关于本指南


这是 Cinema 4D 系列的 Octane 置换的第 3 部分。它旨在指出您在使用置换时可能遇到的最大问题,并引导您朝着正确的方向进行修复。


有关置换的更多详细信息,请查看本系列中的其他两个指南:
第 I 部分:置换简介和第 II 部分:模型和纹理注意事项。


c4d octane实时渲染速度慢图1


“它不工作”


1. 是否已插入?

我们知道,我们知道... 取笑我们。


在 C4D 中

在你做任何其他事情之前,暂停渲染,点击 Octane Live Viewer 中的 [R] 按钮来完全刷新场景,然后点击 Octane 按钮重新启动它。这将从 GPU 中清除缓存并将所有内容再次发送到 VRAM。


正确的模型是否使用正确的材料?


材质标签中是否有活动选择将其限制为仅几个多边形(或没有,因为选择标签已被删除,但材质中仍有一些东西?)。


是否有另一个材质标签覆盖具有位移的材质?


在辛烷值材料中

节点树中的所有内容是否正确连接?


/tex 目录中的源图像,以及 ImageTexture 节点中纹理的路径是否正确?尝试重新加载它。


置换节点中的高度值是否足以让您的模型比例看到任何东西?将其设为 100 厘米,看看是否有任何改变。


c4d octane实时渲染速度慢图2


如果您正在使用纹理置换并执行任何程序化操作(生成、混合、映射、OSL 等),那么在进入置换节点之前 ,该程序链是否以烘焙纹理节点结束?

如果您使用的是顶点置换,是否正确设置了贴图类型(b&w 为高度,矢量贴图为矢量)?


2.检查纹理本身

断开置换节点并将 ImageTexture 节点运行到反照率通道中。


创建一个具有500x500 段的新平面,并将材料应用于它(不要从模型中复制标签,以防标签出现问题)以更好地隔离问题。


如果它看起来像您所期望的那样,则图像本身可能没有问题,但可能值得仔细检查本节中的其余步骤。现在尝试将其路由回位移节点,看看它是否在平面上工作。如果是这样,这是标签、材质设置或模型的问题,而不是源纹理的问题。


如果图像在缩略图中变黑并且没有显示在颜色通道中(即使在新平面上),则可能是纹理问题。


在 2D 图像编辑器中打开纹理 - 有时图像本身已损坏,在这种情况下,您必须获取它的新副本,尝试修复它,或使用不同的纹理。

如果打开正常,请尝试将副本另存为PNG 。如果这样可行,则原始文件中的图层或其他数据可能存在破坏 Octane 的问题。


如果纹理是 PSD ,请在 Photoshop 或其他支持 PSD 的图像编辑器中打开它,并确保没有智能对象或矢量图层。如果是这样,请将副本另存为拼合图像(无图层),然后使用新的拼合版本重试。虽然 Octane 确实可以识别带有图层的 PSD,但如果其中有任何花哨的东西,例如效果、矢量对象或其他程序图层,Octane 通常只会在缩略图中将纹理显示为黑色,并且无法正常工作。


如果纹理是 EXR ,请在图像编辑器中打开它并查看它是否是多层文件。如果是这样,只提取高度图并使用它。


如果另存为平面副本不起作用,则可能不是与纹理相关的问题。


3.检查型号

这里没有太多会使位移根本不起作用。


如果您使用的是顶点置换,只需确保通过细分或线段有足够的几何图形来实际置换多边形,以便您看到任何东西。如果你这样做了,问题可能出在其他地方。


确保所有法线都对齐并朝外。


检查是否有任何多边形选择以及它们是否链接到正确的材料。


4.检查UV/投影

您是否使用正确的投影?


如果您使用 UVW 到 XYZ 投影,是否设置正确?


如果您使用的是 MeshUV 投影,您是否希望通过置换来置换纹理的重叠部分?


5.请人看一看

如果上述方法均无效,请尝试在 Slack 组或 Slack 组上的 Octane 论坛中提问,看看其他人是否有同样的问题 - 如果没有,可能是系统范围内的问题,例如 Octane 安装损坏或设置混乱。


“它一直在崩溃”


检查您的系统

你有足够的显存吗?(实时查看器会显示它的使用量)。通常如果你用完了,它会溢出到内核外内存中,但有时它可能会崩溃。如果这是一个问题,请考虑简化场景。


后台是否有其他东西占用了 GPU 资源(您是否让游戏继续运行?您是否同时在 After Effects 中渲染某些内容?)


您是否有足够的可用 RAM 和硬盘空间?理想情况下,RAM 应该是 VRAM 的 2-3 倍,并且对于任何 3D 工作,您应该始终至少有 30 或 40GB 的可用硬盘空间。


检查您的场景/设置

多边形数量是否太多?不同的系统可以处理不同数量的三角形,但通常超过几百万,事情会开始变慢,超过一千万或两千万有时会导致崩溃,具体取决于 GPU。


你是否在场景中做其他非常复杂的事情,比如焦散、模拟或其他消耗大量资源的事情?


仅将模型和置换材质复制到新场景中,看看是否可行。


“缺少多边形/剪裁”


c4d octane实时渲染速度慢图3


这几乎总是在纹理置换(不是顶点)中看到。当您四处移动相机并且不同的多边形消失时,这一点非常明显。


通过向网格(细分)添加更多实际多边形来解决此问题。


“水渍”


c4d octane实时渲染速度慢图4



这是另一个常见的纹理置换问题。解决这个问题的方法是使用过滤器值,并增加基础网格的多边形数量和纹理分辨率,以获得所需的锐角。Level of Detail 下拉菜单中的更高分辨率也可以对此有所帮助。


沿 X 轴和 Z 轴像素化


c4d octane实时渲染速度慢图5


如果图像沿着曲线或对角线的边缘看起来有阶梯状和像素化(但不一定沿着移位的高度轴像素化),则可能是分辨率问题。


如果您使用纹理置换,源纹理本身和置换节点中设置的细节级别都需要足够高的分辨率才能看起来平滑。


如果您使用顶点置换,源纹理必须具有足够高的分辨率,并且表面上的多边形数量必须足够密集才能看起来平滑。正如您在上面看到的,即使使用 8k 纹理,除非在置换区域中有更多多边形,否则它看起来不会很好。


这也可能是 UV 岛的问题,您的位移太小。岛越小,它必须使用的像素就越少,并且该区域的分辨率越低,即使具有非常高分辨率的纹理。这是与模型其余部分的平衡行为,但可能值得为您想要置换的区域采购更高分辨率的纹理并打破几何体,以便它有自己的 UV 贴图并且一切都可以更大。


沿 Y(高度)轴步进


c4d octane实时渲染速度慢图6


这可能是由于源图像的位深度低和/或高度值太高。它在 8 位 PNG 或 JPG 上最常见,但根据地图的制作方式,如果您试图将其推得太远(将高度增加太多),它甚至可能在 16 位高度地图中成为问题.


如果没有一些非常严肃的专业工具,您将无法对位深度进行上采样,即使那样,它也可能无法获得您想要的结果。根据地图,您可以在 2D 应用程序中尝试模糊或抖动,但很有可能您必须找到/制作更高位深度的版本,降低高度值,尝试用凹凸/法线贴图覆盖它,或用场景中的其他对象遮挡它。


c4d octane实时渲染速度慢图7


如果您将纹理置换与烘焙纹理一起使用,请确保烘焙纹理中的类型字段设置为HDR 线性空间。这会将程序生成的纹理转换为扁平的 32 位图像,从而避免步进。


可变分辨率问题


c4d octane实时渲染速度慢图8


如果模型的一部分看起来不错,但旁边的另一部分看起来像素化,则可能是模型的拓扑、UV 贴图或两者都有问题。


这在顶点置换中远比纹理置换更成为问题,因为顶点置换使用模型的真实多边形网格,而不是像纹理置换那样创建自己的体素网格。


解决方案是平衡网格上大小多边形之间的过渡,和/或重做 UV。


相交/未对齐的边

这个很难诊断,因为有几个独立的事情可以导致它。


中级问题


c4d octane实时渲染速度慢图9


如果源纹理使用线性颜色空间,则中间级别应设置为0.5 。此时,任何 50% 灰色的东西都不会被置换,并且边缘应该正确对齐(假设纹理图块正确)。


如果纹理设置为黑色是不同 UV 岛应该无缝连接的中点,则将中间级别设置为0 。如果白色是中点,则将中间级别设置为1 。如果它是任何其他值,则必须手动调整该值以使其正确对齐。


色彩空间问题


c4d octane实时渲染速度慢图10


如果您使用顶点置换并使用具有线性颜色空间(16 位或 32 位)的纹理,则需要将 ImageTexture 节点中的颜色空间更改为非颜色数据并将中点设置为0.5


c4d octane实时渲染速度慢图11


使用顶点置换时,如果您需要调整图像以补偿 sRGB 或其他伽马曲线,您可以在图像纹理节点中使用颜色空间和旧伽马控件进行调整。


c4d octane实时渲染速度慢图12


纹理置换已经将传入数据视为非颜色数据,因此更改图像纹理节点中的颜色空间或调整烘焙纹理节点中的伽玛不会影响任何事情


如果您遇到色彩空间问题,您可以尝试通过将原始源纹理运行到烘焙纹理节点然后调整原始纹理节点(不是烘焙纹理节点)中的伽马/色彩空间来纠正它们,或者通过放置原始纹理和新烘焙纹理节点之间的颜色校正节点,然后更改颜色校正节点中的伽玛。


在这两种情况下,请确保将烘焙纹理节点设置为 HDR 线性空间


如果源图像在任何其他颜色空间(如 sRGB)中,这将是调整传统伽马/颜色空间和中间值的平衡行为。地图可以通过多种方式创建,任何人都可以猜测它是如何完成的。Gamma 曲线不仅会影响中间灰度,还会影响渐变中的所有灰度,因此错误的灰度会创建直线曲线。有时你可能无法纠正一张奇怪的地图,你要么继续调整中点以避免交叉路口而不用担心失真,要么找到一张新地图。


紫外线问题


c4d octane实时渲染速度慢图13


另一种可能性是,构成彼此相邻的两个边缘的UV岛是具有不同色调的源图像的重叠部分。这将导致一个比另一个“低”并导致错位(或断开的面板)。确保 UV 周围的边缘正确。解决这个问题可能需要重做 UV 和/或编辑图像。


程序设置:色彩空间问题


c4d octane实时渲染速度慢图14


如果您在 Octane 中生成程序置换数据(使用颜色和图案节点制作贴图),并希望 50% 的灰色场作为“基线”(无置换),您的第一反应可能是获取 RGB Spectrum 节点并将其设为 50% 灰色。当您将中间级别设置为 0.5 时,这将不起作用,因为 RGB Spectrum 节点会在sRGB 颜色空间中吐出值。Octane 的非颜色通道(如凹凸/位移/粗糙度/等)都期望线性空间中的非颜色数据。为了纠正这个问题,中间值必须在 0.22 左右,这可能会影响您与该节点组合的其他黑白值。


使用Float Texture节点代替 RGB Spectrum节点。这将生成一个介于 0 和 1 之间的线性非颜色数据值。0.5 将对应于“中间灰色”,并且当中间级别也设置为0.5时,最终纹理的该部分不会发生位移。


失真


曲线、壁球和拉伸


c4d octane实时渲染速度慢图15


如果您期待一个直线渐变或圆形半球,但最终是一个弯曲的线性渐变或鸡蛋的顶部,这可能是由于色彩空间。这通常不是纹理置换的问题,但对于顶点置换,您必须确保 ImageTexture 节点中的色彩空间与图像文件的色彩空间相匹配。


根据地图本身(即不使用整个黑白光谱的地图),颜色空间错误也可能使整体高度看起来“拉伸”。这是由于中间灰色落在伽马曲线上的位置。

如果您的源纹理在线性颜色空间中,请将 ImageTexture 节点中的颜色空间更改为non-color data 。如果没有,您可能必须使用传统的伽玛数来校正它所在的任何颜色空间。


请记住使用图像纹理节点 - 而不是位图节点(通常在不使用节点编辑器时会出现问题)。您无法使用位图节点控制伽马曲线。


如果您使用顶点置换,您可以直接更改图像纹理节点中的值。如果您使用纹理置换并需要校正图像,则必须通过烘焙纹理节点(设置为 HDR 线性空间)运行图像纹理节点,以查看您在图像中所做更改的结果纹理节点。


松脆的表面和尖尖的边缘


c4d octane实时渲染速度慢图16


这可能是由于 JPEG 有损压缩伪影造成的。


为了解决这个问题,您可以尝试使用纹理置换的滤镜,尝试在 2D 图像编辑器中对图像应用光模糊,或者尝试以其他格式(如 PNG、TIFF、EXR 等)查找源。


包起来

这应该涵盖了 Octane 中大多数常见的置换问题。如果您遇到此处未涵盖的问题,请在下方留下任何评论。

声明:若水百科所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系youzivr@vip.qq.com