或者更好的说,这是什么意思?
这些单位应该是什么?
如果我正在尝试模拟对“背景”产生的摩擦力,就像这样:
return this
.velocityDirection
.mult(mu * this.mass * g)
.negate();
我希望使用 g 作为 9.80665 m/s^2。在使用 PhysicsJS 之前,它一直是这样工作的:
var
frictionForce;
frictionForce = vec2.create();
vec2.scale(
frictionForce,
vec2.negate(
frictionForce,
this.velocityDirection
),
mu * this.mass * g
);
return frictionForce;
我曾经使用glMatrix进行线性代数计算。
我一直将质量用千克,力用牛顿等单位表示,但在PhysicsJS中似乎不是这样的。(例如:如果有一个半径为1的圆形物体,它的半径是多少?因为当我必须将这个值用于其他地方时,以及"转换"为屏幕上的像素时会产生差异)
现在我正在使用物理库,感觉好像缺少了一些物理知识...
我希望有人能指导我更好地理解它。我正在查看API文档,学到了很多,但没有找到我想要的答案。
更新
我得到了一个非常直接的答案。这只是想让任何感兴趣的人知道我接下来做了什么...
由于Jasper和dandelany的帮助,我更好地理解了PhysicsJS的一些工作原理。为了实现我的愿望,在PhysicsJS中使用牛顿、每秒米等输入(并且还有可配置的像素每米比率),我决定创建另一个求解器。
它只是原始(默认)verlet integrator的略微变体。我在这篇(粗略的)文章Metres, Seconds and Newtons in PhysicsJS中对它进行了解释。