激活或关闭一个模拟物体。
一个主动物体(即主动刚体)可以由解算器控制,也可以被其它物体影响。一个被动物体,即使附加了解算器,它也不会被解算器所修改。但它仍然可以影响其它物体,但不会被这些物体所影响。此数值可以被设置动画来使物体在两个状态间切换。
使用RBD Keyframe Active DOP节点来给刚体物体设置动画更容易。此节点会合并一个Active Value DOP节点,让你控制被设置动画的位置以及激活状态下的位置。
Parameters
Active | 控制物体是主动还是被动物体。 | ||||||||
Parameter Operations | 每个数据选项都有一个关联的菜单,可以指定参数如何操作对象。
| ||||||||
Default Operation 默认操作方式 | 对于任意的”操作” 菜单中设置使”用默认方式”的参数,此参数控制使用什么操作方式。 该参数也有同样的菜单选项,意思和参数操作菜单一样,但是没有”使用默认”选项。 | ||||||||
Data Sharing | 控制由该节点创建的数据被模拟中多个物体所共享的方式。(数据共享可以很大程度上减少内存的使用)
| ||||||||
Activation 激活 | 定义该节点是否应当在给定的时间步幅上,为特定的物体做一些事情。如果该参数是一个表达式,它会用于每个物体的计算(即使开启共享数据)。 如果计算出的是一个非0值,那么数据就会附加到物体上,如果计算出的是0,就不会附加任何数据,并且先前通过该节点附加的数据也会被移除。 | ||||||||
Group | 当一个物体连接器被附加到该节点的第一输入端时,此参数可以用于从这些物体中选择被该节点所影响的一个Subnet容器。 | ||||||||
Data Name 数据名 | 提示会被附加到物体上火其它数据中的数据名。如果数据名包含一个或多个”/”,表示要进入子数据内部。 例如,如果 Fan Force DOP 节点有默认的Forces/Fan数据名,此会将名为Fan的数据附加到一个名为Force的数据块中。如果不存在名为Forces的数据,会创建一个数据块容器来放置Fan子数据。 不同的数据块在应当使用什么名称方面有不同的需要。除非在及其罕见的情况下,会使用默认的数据。 | ||||||||
Unique Data Name 唯一的数据名 |
Inputs
First Input | 此可选输入可用于控制哪个模拟物体会被该节点修改。任何通过该输入端连接的物体,以及匹配组参数的物体都会被修改。 如果该输入端没有连接,此节点可以配合一个Apply Data(运用数据)节点使用,或者可以作为其它数据节点的输入。 |
All Other Inputs | 如果该节点有多高输入连接对象,其它数据可以作为修改由该节点创建的数据的修改器。 指定的子数据类型对从节点到节点是非常有意义的。中键点击一个输入连接器来查看可获取的数据节点列表(这些节点可以被有意义的附加)。 |
Outputs
First Output | 此操作节点的输出取决于连接到该节点的输入对象。如果一个物体流输入到该节点,输出也会是一个包含同样物体的物体流(但是会在物体上附加该节点的数据)。 如果没有物体流连接到该节点,此输出就会是一个数据数据。此数据输出可以被连接到一个 Apply Data DOP 节点上,或者之间连接到其它数据节点的输入上,将该节点的数据附加到另外一个物体或数据块上。 |
Local variables局部变量(DOP中所有局部变量都请参考此处)
channelname | 定义通道名,例如一个节点可能有位置通道(positionx, positiony, positionz),以及用于设置物体名的参数(objectname),其中,positionx, positiony, positionz,objectname就是通道名,也是局部变量,可以在Houdini中使用局部变量来调用这些参数。 下面这个是一个dopfield表达式: dopfield($DOPNET, $OBJID, dataName, “Options”, 0, channelname) 如果数据不存在,会返回0或一个空的字符串。 |
DATACT | 此变量是一个模拟时间变量(可以查看ST)。 |
DATACF | 此变量是一个模拟帧变量(可以查看SF)。 |
RELNAME | 只有当数据被附加到一个关系上时(如,当Constraint Anchor DOP节点连接到Constraint DOP节点的第二,三,四输入端时),才会设置该值。 在这种情况下,此数值会设置数据被附加到另外数据上的这一关系名称。 |
RELOBJIDS | 只有当数据被附加到一个关系上时(如,当Constraint Anchor DOP节点连接到Constraint DOP节点的第二,三,四输入端时),才会设置该值。 在这种情况下,此数值会设置为一个字符串, 此字符串是以空格方式列出的物体的识别号(数据被附加到的该关系中的所有被影响的物体)。 |
RELOBJNAMES | 只有当数据被附加到一个关系上时(如,当Constraint Anchor DOP节点连接到Constraint DOP节点的第二,三,四输入端时),才会设置该值。 在这种情况下,此数值会设置为一个字符串, 此字符串是以空格方式列出的物体的识别号(数据被附加到的该关系中的所有被影响的物体)。 |
RELAFFOBJIDS | 只有当数据被附加到一个关系上时(如,当Constraint Anchor DOP节点连接到Constraint DOP节点的第二,三,四输入端时),才会设置该值。 在这种情况下,此数值会设置为一个字符串, 此字符串是以空格方式列出的物体的识别号(数据被附加到的该关系中的所有被影响的物体)。 |
RELAFFOBJNAMES | 只有当数据被附加到一个关系上时(如,当Constraint Anchor DOP节点连接到Constraint DOP节点的第二,三,四输入端时),才会设置该值。 在这种情况下,此数值会设置为一个字符串, 此字符串是以空格方式列出的物体的识别号(数据被附加到的该关系中的所有被影响的物体)。 |
ST | 此变量是一个模拟时间变量,以秒为单位。如可以用$ST == 0,但不可以用$T == 0 or $FF == 1. |
SF | 此变量是一个模拟帧变量,以帧为单位。如可以用$SF == 10,和$ST 不一样,一个以秒为单位,一个以帧为单位。 |
TIMESTEP | 此变量表示模拟的时间步幅。 |
SFPS | 此变量是TIMESTEP变量的反转形式。是每秒模拟中的时间步幅次数。 |
SNOBJ | 此变量是模拟中物体的标号,如object_$SNOBJ可能代表object_1,object_2,object_3,object_4这几个物体。 |
NOBJ | 此变量表示会被当前节点计算的物体的标号。和SNOBJ(用于模拟中的物体)不同,因为很多节点不会处理处于模拟中的物体。 如果节点不是有序的处理每个物体(如Group DOP节点),此变量可能返回0. |
OBJ | 此变量是被节点所处理的物体的索引号。总是从0运行到 NOBJ-1。 可以用于创建随机标号的物体,或以不同方式分离物体到两个或多个组中。 |
OBJID | 表示物体的ID号,每个物体的ID号都是唯一的。 |
ALLOBJIDS | 此变量是一个字符串,其以空格方式列出所有被当前节点处理的物体的ID号。 |
ALLOBJNAMES | 此变量是一个字符串,其以空格方式列出所有被当前节点处理的物体的名称。 |
OBJCT | 此变量是一个模拟时间变量,当前物体是在该时间处被创建的。 因此要检查一个物体是否在当前时间步幅中被创建,可以使用 $ST == $OBJCT 表达式。如果节点不是有序的处理物体的话(如Group DOP节点),此变量会返回0. |
OBJCF | 此变量是一个模拟帧变量,当前物体是在该帧处被创建的。其用法和OBJCT 一样。 |
OBJNAME | 此变量是一个字符串,其以空格方式列出当前被处理的物体的名称。 |
DOPNET | 此是一个字符串变量,包含当前DOP网络的完整路径。 |
Note
很多动力学节点都有和节点参数名一样的局部变量。例如,在Position节点中,你可以写这样的表达式:
$tx + 0.1
使物体沿着X轴向,在每个时间步幅上移动0.1个单位。