在团结中增加力量
本文关键字:增加 力量 | 更新日期: 2023-09-27 18:17:42
我想让玩家在我释放箭头按钮时立即停止移动,但由于rigidBody2D的影响,它一直在滑动。addForce。下面是我的代码:
void Update () {
forceX = 0f;
var absVelX = Mathf.Abs (GetComponent<Rigidbody2D>().velocity.x);
var absVelY = Mathf.Abs (GetComponent<Rigidbody2D>().velocity.y);
if (controller.moving.x != 0) {
if (absVelX < maxVelocity.x) {
forceX = speed * controller.moving.x;
transform.localScale = new Vector3 (forceX > 0 ? 1 : -1, 1, 1);
animator.SetInteger ("Controller", 1);
}else if (controller.moving.x == 0) {
}
} else {
animator.SetInteger ("Controller", 0);
}
GetComponent<Rigidbody2D>().AddForce(new Vector2 (forceX, 0));
}
提前感谢。
当你向刚体添加一个力时,物理引擎会增加它的速度。在每次物理更新中,物理引擎都会根据碰撞、摩擦等修改速度,然后根据新速度计算新位置。如果你想让刚体立即停止移动,你必须将速度设置为零:
GetComponent<Rigidbody2d>().velocity = Vector2.zero;