统一的脚本不会改变

时间:2018-07-16 00:10:31

标签: unity3d

我制作了一个使用.AddForce来移动球的脚本。当我在z轴上使用它时,它可以正常工作,但是当我在x轴上移动时,它运行得太快了。 x轴的速度以前是300,但是我都将其改变为50。 x轴上的力仍然太大,并且不会改变。

using UnityEngine;
public class ball_movement : MonoBehaviour
{

    public Rigidbody ballmovement;
    public float zforce = 50f;
    public float xforce = 50f;

    private void FixedUpdate()
    {
        if (Input.GetKey("w"))
        {
            //ball moves right
            ballmovement.AddForce(0, 0, zforce * Time.deltaTime, 
ForceMode.VelocityChange);
        }
         if (Input.GetKey("s"))
         {
            //ball moves left
            ballmovement.AddForce(0, 0, -zforce * Time.deltaTime, 
ForceMode.VelocityChange);
        }
        if (Input.GetKey("d"))
        {
            //ball moves forward
            ballmovement.AddForce(xforce, 0, 0 * Time.deltaTime, 
ForceMode.VelocityChange);
        }
        if (Input.GetKey("a"))
        {
            //ball moves right
            ballmovement.AddForce(-xforce, 0, 0 * Time.deltaTime, 
ForceMode.VelocityChange);
        }
    }
}

我在做什么错了?

1 个答案:

答案 0 :(得分:2)

检查是否不影响xforce的* Time.deltaTime。希望对您有帮助