【Unity】Obi插件系列(五)—— 约束

距离约束在这里插入图片描述

  • 距离约束将成对的粒子连接在一起,迫使它们之间保持一定的距离(我们将这个距离称为约束的 “休息长度”)。Obi为你的布网的每一个边缘,或者为你的绳索的每一段创建一个拉伸约束。这些约束对你的布和绳的外观至关重要,所以了解它们的所有参数至关重要。
  • Stretching scale
  • 这是每个约束的休息长度的比例因子。任何距离约束的初始休息长度都是由使用它的ObiActor设置的固定值。你可以通过设置一个比例因子>1来增加这个距离(使约束条件扩大),或者通过使用一个比例因子<1来减少它(使约束条件缩小)。
  • stretching scale: 0.75在这里插入图片描述
  • stretching scale: 1在这里插入图片描述
  • stretching scale: 1.25在这里插入图片描述
  • Stretch compliance (m/N) //拉伸顺应性
  • 这控制了约束条件对长度变化的抵抗程度。在高值时,约束条件将提供很少的拉伸/压缩阻力,使布/绳看起来有弹性。低值将增加约束的刚度。值为零(默认值)将尝试实现完全的刚度,是否实现取决于模拟预算(时间步长大小和距离约束迭代量)。
  • stretching stiffness: 0.7在这里插入图片描述
  • stretching stiffness: 1在这里插入图片描述
  • Max Compression
  • 这是约束条件在启动前允许压缩的百分比。值为0时,将使约束条件抵抗任何压缩,值为1时,它们根本不会抵抗压缩。值为0.5时,一旦约束物的长度低于其休息长度的50%,就会使约束物抵抗压缩。非常轻的布(如丝绸,或细网)将受益于高松弛值。

销钉约束在这里插入图片描述

  • 现在你知道Obi粒子可以固定在actor的局部空间,所以它们相对于actor不会移动。然而,如果你将ObiCloth对象作为一个刚体的父对象,所有固定的粒子将只是模仿刚体的运动,而不会对其施加任何力。这意味着,布会对刚体的运动做出反应,但刚体对布却没有任何反应。
  • 销钉约束允许你将布粒子附着在刚体上,稳定一个双向的能量交换通道:粒子的运动将影响刚体,而刚体的运动将影响粒子。
  • 与其他大多数约束条件不同,销钉约束条件并不存储在蓝图中。它们是由 dynamic particle attachments自动创建和管理的。
  • 如果销钉在collider的体积内,请确保你的collider的层和actor的collider是一样的,以避免碰撞和引脚约束互相打架。(见下节)
  • 一个很好的例子就是风动船。帆应该跟随船的运动,但当风吹来时,它们也必须能够推动船的运动。因此,一个好的想法是使用dynamic attachments将帆连接到船上。
  • 使用dynamic attachments(销钉约束)来创建物理模拟帆。在这里插入图片描述
  • 两个销钉钉在胶囊上。
  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值