wedge_cache支持写入和读取通过楔形化处理服务生成的文件缓存的节点。
此节点将位于输出几何对象的节点下游的图表(位于节点右侧)中。在本地使用时,节点可以让对象穿过它或从磁盘读取对象的缓存。Read or Passthrough if no File 模式可以根据磁盘上是否存在文件从 Read 动态切换到 Passthrough。但是,在基于远程服务的楔形化处理服务上执行时,节点始终将文件写入磁盘(请参见 mode 输入端口)。
wedge_cache 节点可以写入 .bob(Bifrost 对象)、.abc (Alembic) 或 .vdb (OpenVDB) 文件(请参见 wedge_filename 全局变量输入)。
wedge_filename 全局变量指示要生成的文件缓存的位置和类型。wedge_cache 使用的 wedge_filename 节点对 wedge_filename 全局变量值执行标记替换(请参见 wedge_filename 节点的文档)。没有标记的路径对单个缓存也有效,但请记住,在输出楔形时应使用 <wedge_index> 标记,以确保不同楔形之间的文件不会相互覆盖。替换标记后,wedge_cache 节点还会展开输入路径中可能存在的 $name 或 ${name} 形式的环境变量(请参见 expand_env_vars 节点的文档)。wedge_index 和 wedge_index_count 全局变量值。wedge_index 或 wedge_parameter 节点添加到图表中,以设置将在整个楔形范围内变化的参数。可以为本地楔形化处理编写脚本以循环浏览所有楔形和帧,启用隐藏的 write_state 全局变量,并在循环期间修改 wedge_index 全局变量。用户还可以使用 wedge_cache、wedge_filename 和 write_state 节点中包含的构建块构建自己的缓存解决方案(如果需要)。
通过取消选择 Bifrost 曲线图编辑器中的所有节点,当前图表使用的全局变量列表将显示在 Bifrost 参数编辑器中。
wedge_filenamewedge_filename 全局变量确定文件的写入和读取位置。写入或读取的文件类型由 wedge_filename 节点返回的路径上的文件扩展名控制。wedge_cache 节点支持的文件扩展名包括 .bob(Bifrost 对象文件)、.abc(Alembic 文件)和 .vdb(OpenVDB 文件)。任何其他文件扩展名都将作为 Bifrost 对象文件写入和读取。
wedge_indexwedge_index 全局变量指定当前楔形(从 0 开始)。
wedge_index_countwedge_index_count 全局变量指定楔形总数。
write_statewrite_state 全局变量确定 wedge_cache 节点何时写入文件。将此全局变量的值设置为 true 将启用文件写入,包括在本地执行节点时。只需确保在此之后将其关闭,否则可能会在本地无意中覆盖文件。
基于远程服务的楔形化处理服务会在执行图表之前自动将此全局变量设置为 true。
如果 write_state 全局变量为 true,wedge_cache 节点始终穿过几何对象,从其 objects 输入到其 out_objects 输出。
objects要写入到文件缓存和/或要穿过此节点的输入几何对象,具体取决于 mode 输入,以及节点是否在本地执行(另请参见 write_state 全局变量输入)。
modemode 确定在本地使用节点时节点的行为:
Read or Passthrough if no File 从磁盘读取文件缓存(如果存在)。如果没有,节点将自动穿过 objects 输入,因此节点仍输出数据。这是最自动的模式,但更加难以判断用户是从磁盘读取数据还是穿过数据。Read File 从磁盘读取文件缓存(如果存在)。否则,输出将为空。Passthrough 忽略从磁盘读取文件缓存,并穿过 objects 输入传递到其输出。在基于远程服务的楔形化处理服务上执行节点时,mode 将被忽略,且节点始终将文件写入磁盘。
propertieswedge_cache 节点写入文件时要写入的以空格分隔的特性列表。使用 *(星号)指定所有特性。有关此输入的更多详细信息,请参见 write_Bifrost_object、write_Alembic 和 write_OpenVDB 节点的文档。wedge_cache 节点在内部使用这些节点,其 properties 输入具有与这些节点相同的功能和限制。
create_directories如果为 true,则 wedge_cache 节点将创建目录树结构(通过 wedge_filename 节点指定,如果在节点写入文件时此树结构不存在)。有关此输入的更多详细信息,请参见 wedge_cache 节点在内部使用的 write_Bifrost_object、write_Alembic 和 write_OpenVDB 节点的文档。
alembic_interpolation读取 Alembic 文件时在子帧位置进行数据插值的插值方法(请参见 read_Alembic 节点的文档)。
volume_subdivision_structure读取 OpenVDB 文件时输出 Bifrost 体积的体积细分结构(请参见 read_OpenVDB 节点的文档)。
out_objects已穿过此节点或从文件读取的对象数组,基于 mode 输入和 write_state 全局变量输入。
first_objectout_objects 输出数组中的第一个对象。