有没有办法检查一个力是否被施加到一个物体上?

Is there a way to check if a force is being applied to an object?

我有一个可以向任何方向动态移动的物体。我想以恒定的速度在设定的方向上拉动它,但前提是它不在一般的拉动方向上移动(不一定平行)。换句话说,如果它朝我走来,我不需要拉它。

那么我的问题是;有没有办法检查这个对象是否在这个一般的拉动方向上移动?

如果“拉”力施加的方向与当前速度之间的点积大于 1,则速度在拉的方向上。

Vector3 pullDirection;
Vector3 currentVelocity;

bool isMovingInPullDirection = Vector3.Dot(pullDirection, currentVelocity) > 0;