命令条目: “粒子视图” 添加或选择“缓存选择性”。

“缓存选择性”操作符的工作方式与“缓存”操作符非常相似,不同之处在于它可以让您从缓存中排除某些类型的数据。此外,像使用“缓存磁盘”操作符,您可以指定后缓存操作符,且必须手动更新缓存。

“缓存选择性”工作流与“缓存”操作符工作流有些不同,因为“缓存选择性”工作流用于定义粒子系统的大部分计算密集型属性(通常是运动),预先计算一次,然后通过后缓存操作符使用其他粒子系统属性(图形、大小、方向、贴图、颜色等)。          

若要使用“缓存选择性”,请将其添加到要缓存的事件,或如果要缓存整个粒子流,请将其添加到全局事件。          

提示如果遇到粒子系统相互依赖的情况,请使用“缓存”操作符,然后在可以渲染前解算模拟,尤其是如果要在网络上渲染,或要无序地渲染帧。由于粒子系统相互依赖,粒子流一次仅可以迭代一个帧。

有关缓存如何在粒子流中工作的常规背景信息,请参见“缓存”操作符主题的简介。          

请参见“缓存磁盘”操作符。          

界面

使用位置

在视口中播放时,或在渲染时,或在这两种情况下,将粒子运动存入缓存。默认设置为“视口”。                      

重要信息仅当在视口中和在渲染时使用相同数量的粒子时,才选择“视口/渲染”选项。换句话说,全局事件(或粒子流源)的“发射”卷展栏上的两个“数量倍增”设置必须相同。否则,会发生不可预测的结果。

注意如果发射器已选定,数据将显示为白色。

范围

设置“缓存选择性”操作符所作用的帧范围。默认设置为“活动段”。

  • 活动段软件仅将活动段中的帧存入缓存,活动段由“时间配置”对话框上的“开始时间”和“结束时间”设置来定义。这是轨迹栏上显示的帧范围。您也可以按住 Alt+Ctrl,并用鼠标的左、中或右按钮拖动轨迹栏来更改活动段。

  • 自定义软件仅将自定义范围中的帧存入缓存,该范围由“缓存选择性”操作符的“开始时间”和“结束时间”设置来定义(请参见下文)。

注意如果您仅将部分动画存入缓存,“粒子流”会按顺序计算粒子行为,没有缓存的帧则使用已缓存的数据。例如,如果您将第 0 帧到第 50 帧存入缓存,然后跳至第 60 帧,则“粒子流”会基于缓存的数据计算第 51 帧,以及基于每一前面帧计算第 52 帧到第                           60 帧。

开始/结束时间

当“范围”设置为“自定义”时(请参见上文),则为缓存时帧范围的开始帧和结束帧。默认设置为 0, 30。                      

注意帧范围时间是绝对时间,也就是说,对整个动画而言。如果您在局部使用“缓存选择性”操作符,并且在您指定的帧范围内没有粒子在事件中出现,则粒子流不会使用缓存。

采样

确定“缓存选择性”操作符采样和缓存动画的频率。默认设置为“每帧”。

  • 每帧软件将动画数据存入缓存的频率为每帧一次。

  • 积分步长软件在每个积分步长将动画数据存入缓存,使用由“使用位置”设置(请参见上文)指定的“积分步长”和用于流的“系统管理”卷展栏(选择全局事件)。如果“使用位置”设置为“视口/渲染”,则它会使用两个“积分步长”值中较小的那一个。例如,如果“视口”设置为“半帧”,“渲染”为“八分之一帧”,则采样率为每帧八次。                          

  • 每 N 帧软件将动画数据存入缓存的帧间隔,该间隔由 N 值指定(请参见下文)。

N

当“采样”(请参见以上说明)设置为“每 N 帧”时,确定执行缓存的帧间隔。默认设置为 5。                      

例如,当 N 设置为默认值 5 时,缓存为每 5 帧存储动画数据。                      

缓存测试结果

当将粒子数据存入缓存时,该项也将测试操作的结果存入缓存。默认设置为启用。                      

当“缓存选择性”用作局部操作符,且下一个事件没有缓存类型操作符时,这很重要。为了使下一个事件工作正常,它应该从当前事件接收粒子。这些粒子由测试操作活动产生。“缓存选择性”操作符可以记录测试活动以便在以后播放它。                      

如果将“缓存选择性”操作符用作全局操作符,则无需将测试结果存入缓存。这是因为系统有每个事件的缓存数据,并且无需测试结果就能跳至任意帧。            

使用文件保存缓存

启用时,软件会将缓存数据包括在您保存到磁盘的场景中。这会大大地增加保存文件的大小,但在重新加载文件时能节省重新计算粒子运动的时间。默认设置为禁用。                      

通常,缓存数据仅会保存在您用“保存”或“另存为”命令创建的磁盘文件中。您也可以使用以下选项指示软件将缓存的数据包括在暂存文件中。                      

使用暂存保存缓存

将缓存数据保存到用“3ds Max”>“编辑”菜单 >“暂存”命令创建的“暂存”文件中。默认设置为禁用。                  

“更新和重置”组              

“缓存选择性”没有用于自动更新磁盘缓存的选项,因为这会对性能产生负面影响。如果您更改了参数,并想要查看更改的结果,您必须单击“更新”按钮。                

更新

如果您更改粒子系统中的参数,缓存数据可能会变为无效。使用该组指定的范围,单击此按钮手动更新缓存。

要取消正在进行的更新,请按 Esc 键。

清除

使用该组指定的范围,删除缓存文件。                    

范围

设置当您单击“更新”或“清除”时,“缓存”操作符重新计算数据的帧范围。默认设置为“活动段”。

  • 活动段软件仅更新活动段中的帧的缓存,活动段由“时间配置”对话框上的“开始时间”和“结束时间”设置来定义。这是轨迹栏上显示的帧范围。您也可以按住 Alt+Ctrl,并用鼠标的左、中或右按钮拖动轨迹栏来更改活动段。                            

  • 自定义软件仅更新自定义范围中的帧的缓存,该范围由“开始时间”和“结束时间”设置来定义(请参见下文)。                            

开始/结束时间

当“范围”设置为“自定义”时(请参见上文),更新范围的开始帧和结束帧。默认设置为 0, 30。                    

更新视口

启用时,在手动更新缓存的过程中,动画会在视口中播放。禁用该项可以禁止在手动执行缓存过程中在视口中播放动画,这能提高缓存进程的速度,特别是大型的或复杂的粒子系统。默认设置为启用。                    

从缓存排除数据

防止粒子流将指定的动画数据保存在缓存文件中。启用某一选项可从缓存排除相应类型的数据。数据类型为:图形、脚本数据、缩放、材质 ID、贴图和旋转。                  

使用后缓存操作符

允许在缓存操作后应用操作符,因此这些操作将不会存储在缓存中。启用该选项之后,单击“按列表添加”打开一个对话框,该对话框列出了当前流中所有会影响行为的操作符,然后从对话框中选择操作符。此后,它们将出现在“后缓存操作符”列表中。                  

后缓存操作符

列出由“使用后缓存操作符”指定的操作符。                  

按列表添加

打开可从中选择操作符的对话框(将在缓存运行后应用该操作符的影响),因此这些操作将不会存储在缓存中。                  

移除

从“后缓存操作符”列表中删除所有高亮显示的操作符。                  

“已用内存(K)”组              

“缓存选择性”操作符将数据存储到系统内存中,您可以指定其使用的内存数量的上限。如果“限制”设置和缓存数据的数量超过了可用内存,计算机系统可能会改用基于硬盘的虚拟内存,而虚拟内存会降低执行缓存的速度。如果“粒子流”充满了缓存,则不会计算任何剩余的帧。                                

该组也让您可以监视用于缓存数据的内存数量。                

限制

可用于缓存粒子数据的系统内存的最大数量,以 KB 为单位。默认设置为 100,000,即 97.6 MB。                    

总计

当前用于缓存数据的内存数量,以 KB 为单位。其属性为只读。

注意即使没有粒子的动画帧也可能消耗一定量的缓存。原因是缓存同时保存随机计算值的状态,例如“变化”,从而确保粒子活动在渲染网络上的一致性,并且确保其与不经常访问所有帧的机器保持一致。                            

当前帧

由为当前帧缓存的数据使用的内存数量,以 KB 为单位。其属性为只读。                    

,