返回介绍

3ds Max 帮助

3ds Max 帮助归档

“缓存选择性”操作符

发布于 2022-07-23 00:46:04 字数 5939 浏览 0 评论 0 收藏 0

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

  • “粒子视图” 添加或选择“缓存选择性”。

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

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

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

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

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

界面

使用位置
在视口中播放时,或在渲染时,或在这两种情况下,将粒子运动存入缓存。默认设置为“视口”。 重要信息:仅当在视口中和在渲染时使用相同数量的粒子时,才选择“视口/渲染”选项。换句话说,全局事件(或粒子流源)的“发射”卷展栏上的两个“数量倍增”设置必须相同。否则,会发生不可预测的结果。 注意:如果发射器已选定,数据将显示为白色。
范围
设置“缓存选择性”操作符所作用的帧范围。默认设置为“活动段”。
  • 活动段粒子流仅将活动段中的帧存入缓存,活动段由“时间配置”对话框上的“开始时间”和“结束时间”设置来定义。这是轨迹栏上显示的帧范围。您还可以更改活动段:按住 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 为单位。其属性为只读。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文