已知一个碰撞体的rigidbody和Collider信息,我想让这个碰撞体移动指定距离然后停下,该如何计算出施加的力?不能用线性速度然后在update中判断位置然后去停止。 
摩擦力:质量 * 重力加速度 * 摩擦系数
力做功: W=F*S
摩擦力做功 = 施加的力做功。
这个公式不行,得和线性衰减值、摩擦力相关
哪个公式?
打错字了。我需要使用配置在组件上的属性(弹力、摩擦力、重力倍数、线性衰减)去计算这个力,通用的物理公式不行。
想到个笨方法,施加大小为10的力,看物体能走多远,写死在代码里,然后运行时用实际距离去除它,得出的系数再乘10 
放缩法。好聪明的办法,我感觉挺好的呀
你是说,组件没有提供摩擦力系数吧。我记得是有提供的。
我需要的计算施加力的公式是使用组件上配置的属性来算出施加力。你说的摩擦力做的功=施加力的做功,这当然没错,但是没用,因为已知的条件没法往这个公式上套。简而言之,我现在只知道
这些数据,想知道让它走移动200像素得多大的力,怎么算。首先距离单位不应该使用像素,需要将像素转换为物理引擎中的距离单位。
-
假设需要移动 200 单位的距离。
-
在此期间摩擦力做功为:(同时这也是施加的力做功)
-
摩擦力 = 刚体质量 * 重力加速度 * 摩擦力系数。
-
摩擦力做功 = 200 * 摩擦力
-
-
计算需要施加的力及距离:
-
首先施加的力必须大于静摩擦力。即需要使物体移动起来
-
施加的力(F) 与 施加的力作用距离(S)为:(此处为函数关系,并不确定。即施加的力的做功距离会根据施加力的大小变化)
-
F = 摩擦力做功/S
-
你需要从引擎中获取的变量为:刚体质量,重力加速度,摩擦力系数。移动的总距离已确定,力的大小是因变量,力作用的距离是结果。上面的三个变量搜一搜,都有。

