What & How & Why

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
vfx:houdini:dop:node:objects:rbd_packed_object [2019/10/19 07:59] – [Collision Shape Attributes] codingharevfx:houdini:dop:node:objects:rbd_packed_object [2021/11/11 08:08] (当前版本) codinghare
行 1: 行 1:
 ======RBD Packed Object====== ======RBD Packed Object======
 <color #7092be>**//Creates a single DOP object from SOP Geometry that represents a number of RBD Objects.//**</color> <color #7092be>**//Creates a single DOP object from SOP Geometry that represents a number of RBD Objects.//**</color>
-===== =====+----
 // RBD Packed Object// 节点 会在 DOP 中创建一个 DOP 对象,供 DOP 模拟使用。该节点从指定的 SOP 路径获取几何体,并使用一个单独的点和每个具有变换的 primitive 来描述 RBD 对象。这些 primitives 可以是 //packed primitives//,//spheres//,//tubes//。每个 Primitives 都会为刚体提供碰撞几何体;而在 primitives 上的点则会包含属性,用于存储相关的信息,比如方向(orientation),质量,速度等等。\\ \\ 这导致该节点的效率远远高于 //RBD Fractured Object//、//RBD Point Object//。该节点现在只能被 //Bullet Solver// 识别。 // RBD Packed Object// 节点 会在 DOP 中创建一个 DOP 对象,供 DOP 模拟使用。该节点从指定的 SOP 路径获取几何体,并使用一个单独的点和每个具有变换的 primitive 来描述 RBD 对象。这些 primitives 可以是 //packed primitives//,//spheres//,//tubes//。每个 Primitives 都会为刚体提供碰撞几何体;而在 primitives 上的点则会包含属性,用于存储相关的信息,比如方向(orientation),质量,速度等等。\\ \\ 这导致该节点的效率远远高于 //RBD Fractured Object//、//RBD Point Object//。该节点现在只能被 //Bullet Solver// 识别。
 ====Point Attributes==== ====Point Attributes====
行 9: 行 9:
  
 //Bullet Solver// 使用如下的点属性(point attributes)来存储 //Packed Object// 中每一个部分需要的信息。 //Bullet Solver// 使用如下的点属性(point attributes)来存储 //Packed Object// 中每一个部分需要的信息。
-^ Name ^  Type  ^Description ^+^ Name ^  Type  ^  Description  ^
 |<color #900>active</color> Int  |指定对象**是否能够**与模拟中的其他对象交互。\\ \\ **关联参数**: ''initial Object Type'' 。| |<color #900>active</color> Int  |指定对象**是否能够**与模拟中的其他对象交互。\\ \\ **关联参数**: ''initial Object Type'' 。|
 |<color #900>animated</color> Int  |指定是否将 SOP 的变换(也就是自带的动画)更新到 DOP中(以 timestep 为单位)。\\ \\  该选项只在 ''active'' 为 ''0'' 的时候使用。\\ \\ **关联参数**: ''initial Object Type'' 。| |<color #900>animated</color> Int  |指定是否将 SOP 的变换(也就是自带的动画)更新到 DOP中(以 timestep 为单位)。\\ \\  该选项只在 ''active'' 为 ''0'' 的时候使用。\\ \\ **关联参数**: ''initial Object Type'' 。|
行 35: 行 35:
 |<color #900>w</color> Float  |对象的角速度。\\ \\ **关联参数**:''Angular Velocity''。| |<color #900>w</color> Float  |对象的角速度。\\ \\ **关联参数**:''Angular Velocity''。|
 ===Collision Shape Attributes=== ===Collision Shape Attributes===
-下列属性可以用于自定义**碰撞形状**。\\ \\ +下列属性可以用于自定义**碰撞形状**。该属性来自于 ''Bullet Data'' 节点。\\ \\ 
 ^Name^  Type  ^Description^   ^Name^  Type  ^Description^  
 |<color #900>bullet_adjust_geometry</color> Int  |收缩碰撞几何体的范围,防止 collision padding 带来的碰撞几何体增大导致模拟发生变化。该属性可以防止碰撞几何体的交叉,去除 collision padding 带来的几何体缝隙。| |<color #900>bullet_adjust_geometry</color> Int  |收缩碰撞几何体的范围,防止 collision padding 带来的碰撞几何体增大导致模拟发生变化。该属性可以防止碰撞几何体的交叉,去除 collision padding 带来的几何体缝隙。|
 |<color #900>bullet_autofit</color> Int  |当碰撞几何体的表现形式为 box、Capsule、Cylinder、Sphere、Plane 的时候,该参数决定是否使用碰撞几何体的 bounds 来作为碰撞外形。| |<color #900>bullet_autofit</color> Int  |当碰撞几何体的表现形式为 box、Capsule、Cylinder、Sphere、Plane 的时候,该参数决定是否使用碰撞几何体的 bounds 来作为碰撞外形。|
-|<color #900>bullet_collision_margin</color>|  Int  |对象是否可以模拟中其他对象交互。\\ \\ **关联参数**:''Initial Object Type''。| +|<color #900>bullet_collision_margin</color>|  Float |碰撞外形之间的 padding,用于提升 Bullet 的碰撞检测的稳性和表现。**该属性场景比例有关系**\\ \\ 该 padding 会同样增加碰撞外形的大小,因此推荐使用 ''Shrink Collision Geometry'' 来防止碰撞外形的变化。该选项不支持 ''Concave''''Plane''。| 
-|<color #900>bullet_autofit</color>|  Int  |指定对象是否可以与模拟中其他对象交互\\ \\ **关联参数**:''Initial Object Type''。| +|<color #900>bullet_georep</color>|  String  |碰撞外形表现形式比如  //Convex Hull//。| 
-|<color #900>bullet_autofit</color> Int  |指定对象是否以与模拟中其他对象交互\\ \\ **关联参数**:''Initial Object Type''。| +|<color #900>bullet_groupconnected</color> Int  |当表现形式是 Convex Hull 的时候,指定解算器是否以已连接的 primitives 为单位(Packed Primitives),创建一个包含多个 //Convex Hull// 的复杂碰撞外形。| 
-|<color #900>bullet_autofit</color> Int  |指定对象是否可以模拟中的其他对象交互。\\ \\ **关联参数**:''Initial Object Type''。| +===Collision Attributes=== 
-|<color #900>bullet_autofit</color> Int  |指定对象是否可以与模拟中的其他对象交互。\\ \\ **关联参数**:''Initial Object Type''+以下属性用于使指定对象忽略与模拟中其他对象的碰撞行为。 
-|<color #900>bullet_autofit</color>|  Int  |指定对象是否可以与模拟中的其他对象交互。\\ \\ **关联参数**:''Initial Object Type''+|<color #900>collisionignore</color>|String|如果对象处于**未激活**状态,且''min_activation_impulse '' 的值为正,那么该对象不能通过任何满足 ''collisionignore'' 表达式的对象进行碰撞而达到**激活**的效果。| 
-|<color #900>bullet_autofit</color> Int  |指定对象是否可以与模拟中的其他对象交互。\\ \\ **关联参数**:''Initial Object Type''。| +|<color #900>activationxformgroup</color>|String|| 
-|<color #900>bullet_autofit</color> Int  |指定对象是否可以模拟中其他对象交互\\ \\ **关联参数**''Initial Object Type''| +|<color #900>collisionignore</color>|  String  |指定对象满足该属性中的表达式,那么该对象不会与任何其他对象进行碰撞。\\ \\ 该表达式可以使用 DOP 对象的名字,ID、DOP Groups,或 RBD pakced object 中的 ''collisiongroup'' 属性同时,POP Collision Ignore 节点可以用于生成该属性以下是语法:\\ \\ <WRAP> 
 +   ''*''闭所有的碰撞,留空会开启所有的碰撞。 
 +   * ''* ^object1'' 会导致对象名为 ''object1'' 的对象碰撞 
 +   ''wall*''闭 Packed primitive 中,所有 ''collisiongroup'' 属性中,以 ''wall'' 开头的对象。 
 +   ''object1/wall*'' 同上,但指定了 Packed primitive 的来源为 ''Object1''。 
 +</WRAP>|