自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 Penalty-Based Multibody Animation(5)

然后我们定义一些参数。显然,为了让两物体迅速的分开,两物体的相对方向,必然要与物体间的深度向量同向,那么我们也可以认为,两物体分离的相对速度就是d的导数。首先我们确定我们求解的目标,就是已知目前物体关于穿透的一切参数,比如说碰撞的接触点、碰撞的深度、碰撞产生的穿透力、刚体的位置等。这里面与上面不一样的是N的导数,但是N表示的仅仅是一个方向,所以他的导数就可以用角速度叉乘以自身方向来求得。注意rjk其中jk表示第包含第k对碰撞点的物体的索引值,所谓的rjk实际上是某个j物体质心坐标系的原点。...

2022-07-27 20:19:12 46 1

原创 Penalty-Based Multibody Animation(3)

我们需要知道的是,我们并不想要两个碰撞的刚体出现震荡,而是希望刚体碰撞之后立即弹开,这才是现实中两个刚性物体碰撞的正常效果。并且,为了迅速的将两个产生穿透的刚体分开,我们需要在物理渲染一帧的时间内,将简谐运动的幅度降低到0,以保证我们的物理动画更加真实。首先是两帧之间的间隔时间,应该小于周期的一半,原因是,我们观察简谐运动的曲线可以发现,周期一半正好是弹簧向外弹开物体的最大点,也是开始收缩的最小点,我们当然不希望已经要分开的物体再次的碰撞在一起,所以两帧之间的时间间隔要小于震动周期的一半。...

2022-07-21 15:35:47 67

原创 Penalty-Based Multibody Animation(2)

计算弹簧与力的关系我们可以用胡克定律,既: 我们带入牛顿第二定律得到: 求解上面的常微分方程,这样我们就得出关于穿透深度的常微分方程的解 由于弹簧是我们假设的,所以弹簧的质量无需考虑。这时候我们就可以发现,所谓的弹簧-阻尼模型可以用简谐运动来求解。也就是 A,表示幅度。 ω0,表示运动的频率,Φ,表示运动的相位。 根据上面的方程我们可以得到简谐运动的周期 由于是弹簧阻尼模型,除了弹簧的力之外还需要求解阻尼力。传统的

2022-07-11 21:20:21 108

原创 Penalty-Based Multibody Animation(1)

在现实世界中,刚体与刚体由于接触力的作用是不可能发生穿透的,但是在物理动画世界,由于我们无法直接得到刚体与刚体的接触力,并且数据模型也很难具备现实世界的刚体属性。所以我们允许模型与模型之间发生穿透,这样我们就可以计算物体与物体之间的接触力,以此来进一步算出物体下一步的运动状态。 基于穿透的物理模拟实际上是一个利用弹簧-阻尼系统来求取碰撞力的方法。刚体运动基础 在计算机物理模拟中,对于刚体运动通常使用常微分方程来进行描述,也就是常说的ODE。经常使用的ODE有两种,一种叫做Larg

2022-07-11 18:20:43 162

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除