在线客服
在线客服

Arnold GPU渲染支持的功能及基础知识

Arnold GPU渲染支持的功能

  • Arnold GPU 支持复杂的着色网络、SSS、头发、大气、实例化和程序。

  • 使用相同的设置,GPU 渲染目前比 CPU 渲染更嘈杂,因为 GPU 渲染是“非分割的”(即每个相机/AA 样本一条路径)。因此,为了实现等效噪声,需要在 GPU 渲染中增加 AA 样本数。完全支持自适应渲染。

  • 支持standard_surface、standard_hair和standard_volume,但有一些限制(见下表)。

  • 支持 OSL,但目前有一些限制(见下文)。

  • 支持 OpenVDB 卷,但目前有一些限制(见下文)。

  • 支持体积位移,但目前有一些限制(见下文)。

  • 支持文件名属性标签。不支持M ipmap 偏差。

  • 卷上不支持轻量级链接。

  • 有限的 AOV 支持。

  • 不支持跟踪集。

  • 支持自定义程序、驱动程序、颜色管理器。

  • 不支持自定义 着色器、相机、过滤器、BSDF。

  • Arnold GPU 渲染不支持 Noice(因为 Arnold GPU 不支持方差过滤器)


对 OSL 的初始支持已添加到 GPU 渲染器中。与在 CPU 渲染器中一样,您可以在同一着色网络中混合和匹配 OSL 和 Arnold 着色器。请注意,此初始支持仍不完整,目前有许多限制,如下所列。

着色操作

目前,对特定着色操作的支持有限,如下所示:

  • 动态字符串操作

  • 消息传递

开放式虚拟数据库

对 OpenVDB 的初始支持已添加到 GPU 渲染器中。在这个初始实现中,每个 VDB 网格都以密集格式加载到 GPU。虽然这在视觉上与 CPU 渲染器非常匹配并且功能完整,但由于缺乏稀疏表示,内存消耗可能更大。在高不透明度体积的情况下,渲染速度可能比 CPU 慢,因为 GPU 实现不会像 CPU 版本那样有效地跳过空白空间。随着步长参数的减小,与CPU的匹配会越来越好。

体积位移

对体积置换的初始支持已添加到 GPU 渲染器中。在高不透明度体积的情况下,渲染速度可能比 CPU 慢,因为 GPU 实现不会像 CPU 版本那样有效地跳过空白空间。随着步长参数的减小,与CPU的匹配会越来越好。

支持的功能和已知限制

特征

GPU 支持

笔记

相机

cyl_camera

是的

 

鱼眼相机

是的

 

正射相机

是的

 

persp_camera

是的

 

球面相机

是的

 

uv_camera

是的

 

vr_camera

是的

 

色彩管理器

color_manager_ocio

是的

 

color_manager_syncolor

是的

 

驱动程序

cryptomatte_manifest_driver

不

 

driver_deepexr

不

 

driver_exr

是的

 

driver_jpeg

是的

 

driver_png

是的

 

driver_tiff

是的

 

过滤器

blackman_harris_filter

是的

适用于所有 AOV 的单个过滤器。

box_filter

是的

适用于所有 AOV 的单个过滤器。

gaussian_filter

是的

适用于所有 AOV 的单个过滤器。

三角形过滤器

是的

适用于所有 AOV 的单个过滤器。

最近过滤器

是的

适用于所有 AOV 的单个过滤器。

所有其他过滤器

不

回退到盒式过滤器。适用于所有 AOV 的单个过滤器。

灯

气缸灯

是的

 

磁盘灯

是的

 

远光

是的

 

网格光

是的

 

photometric_light

是的

 

点光

是的

 

四光

是的

支持轻型门户

天穹灯

是的

 

聚光灯

是的

 

运营商

收藏

是的

 

禁用

是的

 

include_graph

是的

 

材料x

是的

 

合并

是的

 

设置参数

是的

 

设置转换

是的

 

switch_operator

是的

 

选项

是的

 

覆盖

是的

 

着色器

腹肌

是的

 

添加

是的

 

环境光遮蔽

是的

不支持跟踪集。

aov_read_float

是的

 

aov_read_int

是的

 

aov_read_rgb

是的

 

aov_read_rgba

是的

 

aov_write_float

是的

 

aov_write_int

是的

 

aov_write_rgb

是的

 

aov_write_rgba

是的

 

晒黑

是的

 

大气体积

是的

 

谷仓门

是的

 

黑体

是的

 

凹凸2d

是的

 

凹凸3d

是的

 

c4d_texture_tag

是的

 

c4d_texture_tag_rgba

是的

 

缓存

是的

这是 GPU 上的空操作。

camera_projection

是的

 

汽车漆

是的

 

cell_noise

是的

 

棋盘

是的

 

夹钳

是的

 

clip_geo

不

 

颜色转换

是的

 

颜色正确

是的

 

颜色抖动

是的

 

比较

是的

 

补充

是的

 

complex_ior

是的

 

叉

是的

 

加密货币

不

 

曲率

是的

不支持跟踪集。

划分

是的

 

点

是的

 

经验值

是的

 

面对比率

是的

 

薄片

是的

 

平坦的

是的

 

float_to_int

是的

 

float_to_matrix

不

 

float_to_rgb

是的

 

float_to_rgba

是的

 

多雾路段

是的

 

分数

是的

 

图案

是的

 

图像

是的

不支持 Mip-map 偏差。

is_finite

是的

 

兰伯特

是的

 

层浮点

是的

 

layer_rgba

是的

 

层着色器

是的

 

长度

是的

 

光阻滞剂

是的

 

光衰

是的

 

日志

是的

 

matrix_interpolate

不

 

matrix_multiply_vector

是的

矩阵参数在 GPU 上不可链接。

矩阵变换

不

 

哑光的

不

 

最大限度

是的

 

maya_layered_shader

是的

 

分钟

是的

 

mix_rgba

是的

 

混合着色器

是的

 

模数

是的

 

运动向量

不

 

乘

是的

 

否定

是的

 

噪音

是的

 

normal_map

是的

 

标准化

是的

 

奥斯陆

是的

对闭包和着色操作的一些有限支持。

直通

是的

 

物理天空

是的

 

战俘

是的

 

查询形状

是的

 

斜坡浮动

是的

不支持连接的颜色和位置。

斜坡_rgb

是的

不支持连接的颜色和位置。

随机的

是的

 

范围

是的

 

ray_switch_rgba

是的

 

ray_switch_shader

是的

 

互惠的

是的

 

rgb_to_float

是的

 

rgb_to_vector

是的

 

rgba_to_float

是的

 

圆角

是的

不支持跟踪集。

阴影遮罩

是的

 这个初始版本目前有许多限制,包括:不支持间接照明、没有 AOV 生成,以及阴影遮罩对象中可能不正确的自反射。

洗牌

是的

 

符号

是的

 

空间变换

是的

不支持相机和屏幕空间。

方格

是的

 

标准头发

是的

不支持额外的深度和额外的样本

标准表面

是的

不支持扩散 SSS 模式。

不支持传输 AOV(因此,例如,您将在 Alpha 中获得纯白色以进行传输)

标准体积

是的

 

state_float

是的

 

state_int

是的

 

state_vector

是的

 

减去

是的

 

switch_rgba

是的

 

开关着色器

是的

 

香椿

不

 

跟踪集

不

 

三角

是的

 

三平面

是的

 

双面

是的

 

user_data_float

是的

当前不支持从父程序继承的用户数据

user_data_int

是的

当前不支持从父程序继承的用户数据

user_data_rgb

是的

当前不支持从父程序继承的用户数据

user_data_rgba

是的

当前不支持从父程序继承的用户数据

用户数据字符串

是的

当前不支持从父程序继承的用户数据

公用事业

是的

不支持 edgelength、pixelerror 和 nlights 颜色模式。

uv_projection

是的

 

uv_transform

是的

 

矢量地图

是的

 

vector_to_rgb

是的

 

volume_sample_float

是的

 

volume_sample_rgb

是的

 

线框

是的

 

形状

盒子

是的

不支持跟踪集。

锥体

不

 

曲线

是的

不支持跟踪集。不支持定向曲线。

圆筒

不

 

磁盘

不

 

初见

是的

不支持跟踪集。

纽布斯

是的

 

飞机

是的

不支持跟踪集。

积分

是的

不支持跟踪集。

多边形网格

是的

不支持跟踪集。

领域

是的

不支持跟踪集。

隐含的

不

 

volume_implicit

不

 

蒸馏器

是的

不支持跟踪集。

程序

是的

不支持跟踪集。

体积

是的

不支持跟踪集。

AOV

AA_inv_密度

是的

 

ID

是的

 

N

是的

 

磷

是的

 

首选项

不

 

RGBA

是的

 

Z

是的

 

反照率

是的

 

背景

是的

 

外套

是的

 

外套_反照率

是的

 

外套_direct

是的

 

外套_间接

是的

 

时间

是的

 

扩散

是的

 

漫反射率

是的

 

扩散_直接

是的

 

扩散_间接

是的

 

直接的

是的

 

排放

是的

 

间接

是的

 

运动矢量

不

 

不透明度

是的

 

光线计数

是的

 

阴影遮罩

不

 

光泽

是的

 

sheen_albedo

是的

 

sheen_direct

是的

 

sheen_indirect

是的

 

高光

是的

 

specular_albedo

是的

 

Specular_direct

是的

 

specular_indirect

是的

 

sss

是的

 

sss_albedo

是的

 

sss_direct

是的

 

sss_indirect

是的

 

传播

是的

 

传输反照率

是的

 

传输_直接

是的

 

传输_间接

是的

 

体积

是的

 

音量_Z

不

 

volume_albedo

不

 

volume_indirect

不

 

volume_opacity

不

 

自定义插件

BSDF

不

 

相机

不

 

色彩管理器

是的

 

司机

是的

 

筛选

不

 

着色器

不

 

程序

是的

 

程序

是的

 

成像仪

是的

 

运营商

是的

 

Arnold GPU 渲染的基础知识

系统要求

Arnold GPU 适用于 Turing、Volta、Pascal 和 Maxwell 架构的 NVIDIA GPU。多个 GPU 将提高性能,NVLink 可用于连接多个相同架构的 GPU 以共享内存(在 Windows 上,我们建议也启用 SLI)。

查看支持的 GPU的完整列表。

推荐的NVIDIA 驱动程序: 

 

预填充 GPU 缓存

 

第一次使用 GPU 渲染时,GPU 渲染器必须为所使用的着色器和对象类型创建缓存。这可能会延迟您第一次渲染的第一个像素的时间。为避免这些一次性延迟,我们建议您在执行任何渲染之前通过预先填充缓存来提前执行其中的一些操作,因为这将使用最常见的着色器/对象组合的子集填充缓存。Arnold 插件(如 MtoA)具有预填充 GPU 缓存菜单命令,并且 kick 具有 -gpu_warm 标志。请注意,预填充缓存最多可能需要 15 分钟。只有在安装新的 Arnold 版本、更新到新的 NVIDIA 驱动程序或更改系统上 GPU 的硬件配置后,才需要重新填充缓存。

 

 

GPU 缓存基于 Arnold 核心版本、NVIDIA 驱动程序版本和执行软件的 GPU。因此,如果其中之一发生更改,则您将需要再次运行预填充缓存,以避免渲染过程中的(一次性)延迟。 

 

选择渲染设备

只需单击一下,您就可以轻松地在 CPU 和 GPU 之间切换。您将在 Arnold 插件的渲染设置 > 系统部分中找到一个新的渲染设备设置。

 

您可以使用 CUDA_VISIBLE_DEVICES(环境变量) 来限制 Arnold(以及任何其他基于 Cuda 的应用程序)可以看到的 GPU。

匹配 CPU 和 GPU 上的噪声

 

匹配噪声可能需要一些实验,因为Arnold GPU 仅使用 相机 (AA) 采样。我们建议您还使用自适应采样。以下是一些指导方针:

  • 设置最大值 相机 (AA)在 30 到 50 的范围内(根据场景,您可能会接近 100)。通常,最大样本应该是一个大值。大的最大样本意味着质量由低于阈值的噪声控制,而不是通过钳位到最大 AA。

  • 将自适应阈值设置为0.015 或 0.02 之类的值。对于无噪声渲染,降低阈值,甚至可能降低到 0.010。

  • 将相机 (AA)样本设置为 3 或 4 左右。使用 AA 提高的少数原因之一是运动模糊。相机 (AA)采样数越多,自适应采样带来的加速就越少。

     

所有纹理都必须适合内存。我们建议您使用平铺和 mip 映射的 TX 纹理。如果内存不足,可以在“渲染设置”中为纹理设置最大分辨率。 

 

/v23/jpg/swiper2-34c8e7ae.jpg
/v23/jpg/swiper1-fc05a4ec.jpg
/v23/jpg/swiper2-34c8e7ae.jpg
/v23/jpg/swiper1-fc05a4ec.jpg

热搜关键词

底部宣传图

渲云,您身边的渲染专家!

赞奇科技旗下CG视效行业云渲染品牌
立即注册
联系我们