命令条目:“粒子视图” 添加或选择“出生栅格”。

MassFX 模拟对粒子的初始放置有特定的要求,即其图形不应相互交叉。标准的粒子流位置操作符生成随机的粒子位置,不考虑粒子图形是否有重叠的可能性。为满足此要求,“出生栅格”操作符既要控制粒子的生成又要控制其放置:这两个性质在体积紧缩的情况下紧密相连。                    

该操作符中有一个长方体形状的 3D 图标,可以确定粒子出生的位置。粒子的位置以此图标为基准进行计算。因此,计算粒子的放置后,即可变换操作符图标,无需重新计算。          

若要使用“出生栅格”,请将其添加到事件中或替换粒子系统中现有的出生操作符。当添加“出生栅格”操作符时,会在世界原点 (0,0,0) 位置创建一个“出生栅格”辅助对象。将此图标放置在希望粒子出生的位置。          

为获得最佳结果,如果出生事件包含位置类型操作符,请将其删除。          

请参见“出生流”操作符“出生组”操作符。          

出生栅格要点

“出生栅格”是可供粒子流使用的最复杂的出生类型操作符,因此必须了解如何结合使用各种设置来创建粒子阵列。在使用“出生栅格”时,请注意以下事项:    

  • 为获得最佳和可预测的结果,请勿缩放“出生栅格”图标,但可以调整“图标大小”设置。如果缩放该图标,请注意粒子的数目保持不变,但其放置发生改变。

  • 相反,通过调整“图标大小”设置更改“出生栅格”的图标大小会改变粒子的数量。假如密度相同(“栅格大小”设置),则更大或更小的图标会分别产生更多或更少的粒子。

  • 如果基于“栅格大小”、“上限”和“图标大小”设置,则没有足够的粒子可供填充栅格,阵列将被截断。在这种情况下,应增加“上限”设置(并为由于粒子数量增加而导致的潜在速度降低做好准备)。

  • “栅格大小”和“非均匀栅格”设置会影响粒子密度但不影响体积(假设有充足的可用粒子),而“图标大小”设置会影响粒子体积但不影响密度。

  • “栅格大小”的值与粒子的数量成反比;“栅格大小”的值越小,生成的粒子越多。如果在不重叠的情况下粒子与指定的体积不符,则无论该体积是由“图标大小”设置确定还是由网格体积确定,在“MassFX 世界”操作符启用时,粒子都会超过该体积。如果要查看此效果,请增加“栅格大小”以减少粒子数。                                

  • “出生栅格”以特定的顺序填充图标(通常是自下而上),因此,如果您看到栅格未满(比如说,由于减少“非均匀栅格”的尺寸所致),粒子将通常会从体积的相同部分中丢失,此时需要增加“上限”设置来填充栅格。

  • 由于填充顺序为自下而上(在正高度方向),因此,如果有使用粒子“出生索引”的操作符,则可以使用此填充顺序。了解顺序后,可以旋转空间中的出生图标以产生正确的顺序方向。有关示例,请参见附带的示例文件 WallToWall.max。                

步骤

为了在使用“出生栅格”时获得最佳结果,需要满足某些条件。对于建议的方法,请按照以下示例步骤进行操作:

注意MassFX 流会自动为您进行以下大部分设置,但即使如此,我们仍建议您按照以下步骤进行操作,这样可以帮助您了解出生栅格和粒子流模拟的基本使用方法。                

若要使用“出生栅格”,请执行以下操作:

  1. 打开“粒子视图”,然后添加“标准流”。

  2. 单击“粒子流源”事件,然后在“发射”卷展栏上,将“数量倍增”“视口 %”设置为 100.0。                  

    这一点很重要,因为默认的粒子流系统具有 50% 的视口可见性倍增。因此,栅格结似乎未正确填充;仅显示了一半的粒子。若要看到所有粒子在其正确的位置,请将“视口倍增”调整至 100%。                  

  3. 单击“显示 01”操作符,然后将“类型”设置为“几何体”。

  4. 在事件 01 中,禁用或删除位置图标和旋转操作符。                  

    由于出生栅格将使用其图标来放置粒子,因此,重要的是不要在出生事件中使用位置操作符。不使用旋转操作符并非那么重要,但是通常您可能希望粒子(尤其是非球形粒子)相互对齐。                  

  5. 使用适当的操作符,根据需要设置粒子的图形和大小。                  

  6. 将事件 01 中的“出生”操作符替换为“出生栅格”操作符,然后单击“出生栅格”操作符,使其卷展栏显示在粒子视图的右侧。                  

    此操作将以粒子栅格填充的“出生栅格”图标放置在世界坐标中心 (0,0,0);且将其移动到所需的出生位置。                  

    通常栅格会密实地紧缩。要解决此问题,请降低粒子的大小,增加“栅格大小”的值(以增加栅格结之间的距离),或同时进行这两项操作。                  

    要避免粒子在 MassFX 模拟开始时碰撞,粒子间应该有可见的距离。          

  7. 播放动画。                  

    粒子从其在栅格中的起始位置下落(由于默认的“速度”操作符所致)。        

界面

出生栅格为其在 3D、长方体形状的栅格中创建的粒子定位。默认情况下,粒子会等间距分布;总间距由“栅格大小”设置确定。该值越大,粒子之间的间距越大,反之亦然。要产生不均匀的间距,请启用“非均匀栅格”,并使用其三个数值设置来调整每个轴上的间距在总间距中所占的比例。“栅格大小”和可选的“栅格长度/宽度/高度               %”设置可指定栅格中粒子的密度。

反之,3D 栅格的体积由“图标大小”设置(长度/宽度/高度)确定;这些设置不会影响密度。要获得一个非长方形的栅格图形,请对网格对象使用通过网格体积限制。因此,可以创建任意图形的实心或空心栅格(可以使用“外部层”设置指定壳厚度)。通过将对象嵌套至“网格体积”对象中,可以指定体积内粒子的任意层。

发射时间

操作符发射所有粒子的帧编号。默认设置为 0。                      

出生栅格在由“发射时间”设置定义的帧处同时生成所有粒子。要使粒子逐渐显示,请在不使用图形操作符的情况下在出生事件中生成粒子,然后将您喜欢的任何形式的粒子定向到其他包含图形操作符的事件。                      

栅格基准

选择在单个栅格层上紧缩粒子的方法:正方形布局或三角型布局。在下图中,这两种方法被描绘为从顶部查看:

正方形 三角形

栅格大小

栅格结之间的距离;每个粒子都在结处出生。在“非均匀栅格”禁用的情况下使用此参数时(请参见下文),所有结之间的距离相等。

不同栅格大小值之间的比较

非均匀栅格

启用时,可以为三个轴中的每个轴分别指定结间距,以占基本间距(由“栅格大小”指定)百分比的形式表示。为了达到此目的,可以使用“栅格长度/宽度/高度 %”设置。                      

有关显示“非均匀栅格”选项效果的视频,请参见非均匀栅格。                      

交变横向偏移

以更精简的方式放置粒子,类似于水果堆放在货架中一样。启用时,“精简垂直大小”变为可用。                  

精简垂直大小

控制是否调整垂直栅格大小,以便更精简地放置粒子,其中栅格大小不是层之间的距离而是层的粒子之间的距离。                      

有关通过不同的“栅格基准”选项使用“交变横向偏移”和“精简垂直大小”的示例,请参见下图。                      

   

随机垂直偏移

通过移动垂直粒子列可以随机放置粒子,仅限于粒子不相互渗透。                      

有关显示“随机垂直偏移”选项效果的视频,请参见随机垂直偏移。                      

栅格偏移 %

随机垂直偏移的范围。                  

“唯一性”组              

种子

更改粒子列的随机垂直偏移。                    

新增特性

使用随机化公式计算新种子。                    

通过网格体积限制

启用时,如果已指定参考几何体(请参见下文),则“出生栅格”仅在参考对象内的栅格结处生成粒子。当然,这也意味着参考对象必须至少部分在操作符图标中。

提示使用此功能可创建带有网格对象图形的粒子阵列。使用“删除内部粒子”选项(请参见下文),粒子阵列可以采取壳的形式来定义对象图形,如下图所示:

对于分层的壳,还可以使用嵌套的网格对象,通过“附着”合并为单个对象。此操作的工作原理是,当使用“通过网格体积限制”时,操作符仅将粒子放置在每对同心曲面内,因此可以在不使用“删除内部粒子”的情况下获得挖空的部分。                            

在下图中,我们嵌套(由内而外)了两个圆柱体、一个长方体和一个球体。要获得敞开的顶部和底部,我们降低了“出生栅格”图标高度并对其进行定位,使其顶部和底部都在嵌套图形边界内。                            

                       

注意确定哪些栅格结位于参考几何体内的过程会耗费很长时间,具体取决于栅格结的数量和网格拓扑的复杂性。在计算过程中,运行进度栏显示在程序界面的状态行(底部附近)中。要中断计算,请单击“取消”按钮。

当“通过网格体积限制”启用时,下列控件将变为可用状态:                      

删除内部粒子

启用时,仅在网格体积内生成粒子的外层。                  

外部层号

在粒子层中由网格体积定义的壳的厚度。                  

交互式更新

启用时,更改“出生栅格”设置(例如“栅格大小”)会立即更新栅格。禁用时,要查看更改参数的结果,请单击“计算网格体积限制”。                      

提示在处理大量粒子时,可以通过禁用“交互式更新”且在必要时仅重新计算栅格来加快处理速度。

注意启用“交互式更新”将强制进行即时更新。

参考几何体

单击此按钮可指定其网格定义的体积限制粒子生成的对象。                  

=>

若要选择在“出生栅格”中指定的参考对象,请单击此按钮。此操作将选择场景中的对象,使您可以更容易变换对象或访问其参数。                  

计算网格体积限制

单击此按钮可指定其网格定义的体积用于限制目的的对象。                      

首次指定参考对象时,“出生栅格”会自动调整操作符,以便只在对象内的结处创建粒子。如果稍后变换或修改对象,或者指定不同的参考对象,请使用“计算网格体积限制”来注册更改并更新栅格。                      

图标大小

以世界单位设置辅助对象图标的大小。这将影响图标的体积,但不影响粒子的密度。请记住,即使在使用“通过网格体积限制”选项时,“出生栅格”也仅在图标体积内创建粒子。                      

在使用密度设置(“栅格大小”和“非均匀栅格”)时要获得最可预测的结果,请不要直接缩放图标,应改用“图标大小”设置。                      

协调颜色

启用时,“出生栅格”图标使用的颜色与事件中的“显示”操作符的颜色相同。                  

“栅格结数量”组              

上限

用于指定供“出生栅格”使用的最大栅格结数。                    

总计

操作符图标中栅格结的数量(不考虑参考几何体网格施加的限制)。                    

实际值

当通过参考几何体网格使用“通过网格体积限制”时,将显示粒子在网格体积限制后的数量。                    

使用文件保存栅格数据

由于计算栅格结会花费较长时间,因此,可以通过启用“使用文件保存栅格数据”使用 MAX 场景文件来保存计算结果。否则,每次打开场景文件时都将重新计算栅格结的放置。此操作的潜在缺点是会创建更大的文件。                  

,