我是团结的新手,我想让角色跳到相机的方向。目前我通过向量应用力,y / vertical是常量,但是如何计算x和z比率?
rigidbody.AddForce(new Vector3(10.0f, JumpForce, 10.0f), ForceMode.Impulse);
我希望能够在三维空间中从岩石跳到岩石,在重力的影响下抛物线。
答案 0 :(得分:1)
我不确定你到底是什么意思"跳到相机的方向",但据我所知它做了类似的事情:
Vector3 direction = player.transform.position - camera.transfrom.position;
Vector3 clampedDirection = Vector3.ClampMagnitude (direction, 10f);
Vector3 forceVector = new Vector3 (clampedDirection.x, 10f, clampedDirection.z);
rigidbody.AddForce(forceVector, ForceMode.Impulse);
通过这个,您将获得从跳跃玩家到相机的方向向量,其长度将被限制为10f。 forceVector
将有来自钳位向量的x和z,y将是常数10f。如果你想让forceVector
也是它的长度的10f,那么也要把它钳住:
Vector3 forceVector = Vector3.ClampMagnitude (forceVector, 10f);