Houdini 中文帮助文档

SDF Representation

给几何体创建一个有符号的距离场,即SDF,该场可用于碰撞检测。

SDF是一个空间函数,会计算一点到物体曲面的距离。如果点在物体外部,距离值为正值,如在内部,其值为负值。

此数据必须附加到物体数据块上,用于Houdini的碰撞检测所使用。Houdini会使用父几何体数据来创建SDF。

如果一个几何体数据作为子数据附加到这里,其就会被使用,而非使用父数据。此对使用代理几何体覆盖行为,或在体积采样情况下,明确指定一个外部体积文件非常有帮助。

Parameters

Data Options

Mode
Ray Intersect 使用光线相交方式来创建一个用于代表几何体的精确的体积。
Meta Balls 而非使用光线方式来定义点是在内部或外部,使用的是变形球场方式。
Implicit Box 计算几何体的边界框,创建一个精确的填充边界框的体积对象。
Implicit Sphere 计算物体的边界球,并精确的填充这个边界球来创建一个体积对象。
Implicit Plane 计算物体的边界盒,并沿着方盒的最小轴向细分,创建一个体积对象。所有处于面下方的都会被认为是内部,所有处于面上方的都会被认为是外部。
Minimum 使用到曲面或曲线的距离。如果偏移曲面值为0,就不会创建体积。负值的偏移会创建绕着物体曲面偏移的体积。此可以将薄的物体或线转为真实的实体对象。
Volume Sample 在该模式下会忽略细分,其会从几何体中的第一个体积对象中计算。所计算出的细分值会用于匹配源体积的体素大小。
Divisions 定义用于计算SDF体积的栅格精度。
Laser Scan 激光扫描模式中,SDF对象是通过验证原始轴向发射光线来创建的额。只有最近和最远的交叉处会被使用。两点之间的距离会被认为是内部的,其余的是外部的。
Fix Signs 即使是最好的几何体,数值不精确也会导致选择错误的符号。此选项可以让体积对象被后期处理,查找出不一致的符号。然后他们会被设为一致,通常填充空洞。
Force Bounds Fix Signs 方式只会光滑结果,通常是粗略的反转符号。此选项可以强制边界上的所有体素作为扩展对象,这样Fix Signs 方式就不会错误的修正他们了。
Invert Sign 如果你想要一个中空的盒子,一种方式时在内部创建一个方盒,且不使用激光扫描方式。更强稳的方式是只调节内部方盒,使用符号反转参数。此会使所有方盒的外部作为内部,允许使用更强稳的激光扫描方式。
Offset 设置有符号距离场的偏移数量。
Tolerance 设置当计算SDF时使用的光线交叉容差。此数值会和几何体的大小相乘。
Sign Sweep Threshold 修复过程完成后,仍会有不一致的区域。大的块可能成为SDF的一个凸起。此参数可以扫描消除这些块
Max Sign Sweep Count 设置最大的扫描次数。

Guide Options

Show Guide Geometry 开启此项可以在视窗中显示代表SDF的可视化对象。
Color 使用此参数控制视窗中体积的颜色。
Parameter Operations 每个数据选项都有一个关联的菜单,可以指定参数如何操作对象。

Use Default 使用默认操作菜单中的数值。
Set Initial 只当数据被创建时,设置该参数的值(设置初始状态)。在所有随后的时间步幅中,此参数数值不会改变。此可以用于设置,如位置,速度的初始状态。
Set Always 一直都使用该参数值。此方式可以用于被设置关键帧的数值在整个时间上都需要时所使用。这可能在整个时间上都使用物体的关键帧位置,或导出SOP中的几何体物体在每个时间步幅上都被重新抓取(如果物体有变形)。

你也可以使用此设置与参数的局部变量来随着时间的改变而修改参数。例如,在X位置上,表达式$tx + 0.1会导致在每个时间步幅上都向右移动一个单位。

Set Never 从不设置此参数的数值。当使用该节点修改一个已有的连接到第一输入端的数据块时,此选项非常有用。

例如一个RBD State DOP节点可以只给物体的质量设置动画。Set Never选项可以用于所有参数,除了质量参数(其会使用Set Always方式)。

Default Operation 对于任意的“操作” 菜单中设置使“用默认方式”的参数,此参数控制使用什么操作方式。

该参数也有同样的菜单选项,意思和参数操作菜单一样,但是没有“使用默认”选项。

Data Sharing 控制由该节点创建的数据被模拟中多个物体所共享的方式。(数据共享可以很大程度上减少内存的使用)

Do Not Share Data 不使用数据共享。每个物体都有自己的数据副本被附加。
Share Data Across All Time 此节点只会给整个模拟创建单个数据块。数据会在其被需要的第一时间被创建,这样任何只用于第一个物体的表达式都会被计算。

所有之后的物体都会有该数据,附有从第一个物体表达式中计算出的同样的数值。要记住,表达式不会和数据共同辈存储,所以它们不可以在数据之后被创建。

表达式是通过DOP节点在创建数据之前计算的。涉及时间的表达式在单个数据块被创建时也会被计算。此选项适用于不随时间变化的数据,并且对所有物体都是一样的,如Gravity DOP节点。

Share Data In One Timestep 模拟中,会给每个时间步幅创建新的数据块。在一个时间步幅内,所有物体都会被附加同样的数据。所以涉及到时间的表达式会使数据在整个时间上产生动画,但是涉及物体的表达式只会在被附加数据的第一个物体上计算。

此选项适用于数据随着时间变化的情况,但是它对所有物体,如Fan Force DOP节点都是一样的,因为在该节点中风扇力可以能随着时间而移动或旋转。

Activation 定义该节点是否应当在给定的时间步幅上,为特定的关系做一些事情。如果该参数是一个表达式,它会用于每个关系的计算(即使开启共享数据)。

如果计算出的是一个非0值,那么数据就会附加到关系上,如果计算出的是0,就不会附加任何数据,并且先前通过该节点附加的数据也会被移除。

Group 当一个物体连接器被附加到该节点的第一输入端时,此参数可以用于从这些物体中选择被该节点所影响的一个Subnet容器。
Data Name 提示会被附加到物体上火其它数据中的数据名。如果数据名包含一个或多个”/”,表示要进入子数据内部。

例如,如果 Fan Force DOP节点有默认的Forces/Fan数据名,此会将名为Fan的数据附加到一个名为Force的数据块中。如果不存在名为Forces的数据,会创建一个数据块容器来放置Fan子数据。

不同的数据块在应当使用什么名称方面有不同的需要。除非在及其罕见的情况下,会使用默认的数据。

Unique Data Name 开启该参数会修改数据名参数值,确保由该节点创建的数据会使用一个唯一的名称被附加,这样它就不会在任何已有的数据中被覆盖。

当关闭该参数,使用相同名称附加两个数据块会导致第二个数据被第一个替换。

如果一个物体需要多个风扇力来吹起它,此时使用唯一数据名方式更容易确保每个风扇力不会覆盖先前的风扇力(而不是要试着改变每个风扇的数据名来避免产生冲突)。

在另一方面,如果已经知道一个物体被附加了一些RBD状态数据,关闭该选项可以允许一些新的RBD状态数据覆盖已有的数据。

Inputs

First Input 此可选输入可用于控制哪个模拟物体会被该节点修改。任何通过该输入端连接的物体,以及匹配组参数的物体都会被修改。

如果该输入端没有连接,此节点可以配合一个Apply Data(运用数据)节点使用,或者可以作为其它数据节点的输入。

All Other Inputs 如果该节点有多高输入连接对象,其它数据可以作为修改由该节点创建的数据的修改器。

指定的子数据类型对从节点到节点是非常有意义的。中键点击一个输入连接器来查看可获取的数据节点列表(这些节点可以被有意义的附加)。

点击分享到: