使用 Arnold 时,建议使用通过 maketx 创建的 Mipmap 分片纹理格式,例如 .exr 或 .tx。  

.tx 纹理具有以下特点:

  1. 已分片(通常分片是 64×64 像素)。
  2. 已进行 Mipmap 处理。

如果您已拥有通过其他渲染器创建的 Mipmap 分片 EXR,则无需将这些文件转化为 .tx

 

由于 (1),Arnold 纹理系统可以根据需要每次加载一个分片,而不必将整个纹理贴图加载到内存中,从而造成浪费。这有助于减少纹理加载时间,因为如果 texel(纹素)永远都不出现在渲染的图像中,甚至不会加载这些元素。除了改进速度以外,只有最近用过的分片才会保留在内存中,即,默认大小为 512 MB 的纹理缓存(可以通过 options.texture_max_memory_MB 调整)。长时间未用过的分片会直接从内存中丢弃,以便为新分片留出空间。Arnold 占用的内存从不会超过 512 MB,即便您使用数百个甚至数千个 4k 和 8k 图像也不例外。不过,如果您仅使用少量 1k 纹理,这一点就无关紧要。

 

由于 (2),即使 AA 采样设置较低,纹理也会进行抗锯齿处理。JPEG 或其他未进行分片/MIP 处理的格式不可能具有其中任一特点(除非您指示 Arnold 对纹理进行自动分片和 MIP 处理,但是这种方法非常低效,因为必须对渲染的每一帧执行该操作,而不是通过 maketx 进行一次性预处理)。

 

需要指出的是,.tx 文件基本上是已重命名为 .tx 的 .exr 或 .tif 文件。这意味着图像编辑器可以读取 .tx 文件,但您可能需要将该文件重命名为 .exr 或 .tif,以便图像编辑器加载它。但是,.tx 文件设置了几个额外的自定义属性,可以提高渲染速度,而这些属性通常不包括在 .exr/.tif 文件中。例如,它们将包括一个哈希,这样如果您尝试加载两个包含相同数据的不同文件,Arnold 仅需加载这些数据一次即可。

使用 .TX 的优势

第一个优势是,您可以确保具有 Mipmap 和分片。这将显著缩短生成第一个像素所需的时间和整体渲染时间,并允许使用较小的纹理缓存。这应视为必需项,但可能存在一种例外:对于您常修改的一些图像,如果您不希望每次进行更改时都等待它们不断地转化为 .tx,则不对它们使用 .tx。

您可以从已保存且包含分片和 Mipmap 的非 tx 文件获得上述优势。另一个优势仅与 .tx 文件相关,并涉及添加元数据的 maketx,Arnold 可以利用这些元数据进行更多优化,例如能够检测重复纹理,以及仅将单个副本加载到内存中,或检测恒定颜色图像(如全黑 UDIM),而不是将所有黑色像素存储在内存中(Arnold 可对此进行特殊处理)。


Mipmap 图像存储的示例。 左边的第一个图像显示了缩小后的过滤副本。

 

以下示例表明,与 .jpg 文件相比,使用 .tx 文件可以将速度提升 7 倍:

手动生成 TX 纹理

过程很简单。您将需要 maketx.exe 工具、要转化的纹理和 DOS shell。以下示例说明如何将 .tif 文件转化为 .tx 文件。

 

由 Daniel M. Lara 制作的 Pepe 模型 (Pepeland)

  • No labels
Privacy settings / Do not sell my personal information / Privacy/Cookies