有没有办法在没有声明方向的情况下向对象添加力。
我想扔球,但我只需要在释放后加上力量。
我使用了这段代码rigidbody.velocity = transform.forward * 20;
,但是当球按照用户在屏幕上指示的方向后,球改变了方向并向前移动。
答案 0 :(得分:1)
尝试Rigidbody.AddForce并使用不同的ForceModes。如果我理解你,Impulse或VelocityChange将满足您的需求。
Vector3 forceDirection = transform.forward * 20;
currentGameObject.rigidbody.AddForce(forceDirection, ForceMode.Force);
答案 1 :(得分:0)
如果我理解,你想在球的运动方向,即在速度方向上施加力(或者可能是冲动?):
Vector3 forceDirection = transform.velocity * 20;
currentGameObject.rigidbody.AddForce(forceDirection, ForceMode.Impulse); // or ForceMode.Force
我不太了解,我的意思是,力量必须有一个方向,对吗?我假设你想要它去的地方。