专题栏目:ARVRMR虚拟现实

力的反弹 | 力的反弹是什么意思?

定义:力的反弹则是根据虚拟实体的物理特性来实现的。大致分为两种算法。

(1)计算实体间相互作用力的方法,包括基于约束的方法和补偿方法。基于约束力的方法不直接计算虚拟物体之间在碰撞时相互作用力的大小,而是将碰撞看作是一种对实体运动的约束,根据这些约束建立实体运动的约束方程,并用数值方法求解这些约束方程,得出每个实体所受约束力的大小和方向,将这些力添加到每个实体所受合力中,最后根据合力求解实体新的运动状态和运动方程。但是,在实际问题中,约束不一定是完全约束,而可能是不完全约束,这时就不能用求解方程的方法求解了。补偿方法是一种比较简单的方法。它在两个相互碰撞实体之间添加一个假想的弹力,这个力的大小等于两个实体之间的穿透深度乘以一个常量,方向是将两实体推开的方向。但是当计算时间步长太大时,实体可能在计算下一运动时已经穿过了其他实体一定深度,这个深度不是实体真实穿透的深度,而是由于没有来得及计算而穿透的深度。如果以这个深度来确定弹力的大小,则有可能对实体产生一个很大的力,由此产生不真实感。因此,补偿方法的关键是确定弹力的大小。

(2)分析方法,即在进行碰撞响应时,根据实体的受力情况,采用如动量定理等计算出碰撞引起的实体速度与角速度的变化,并以新的实体运动速度为初速度建立新的实体运动方程。Hahn提出了分析方法,并给出了在完全非弹性的情况下的方程组。但没有给出该方程组的解,须进行数值计算才能求解。在以后的研究中,人们假设两个实体碰撞时表面没有摩擦,简化了计算,并运用动量定理列出了物体碰撞前后的速度和角速度,得出碰撞后实体速度和角速度的解析解,并求解出新的运动方程。

发表评论

相关文章