Нормализуйте силу, добавленную AddForce к 3D объекту - PullRequest
0 голосов
/ 10 апреля 2019

У меня есть шар, подпрыгивающий вверх и вниз по моей сцене с помощью следующего сценария:

public class Ball : MonoBehaviour {

    public float speed;
    public float globalGravity;

    Rigidbody ball;

    void Start()
    {
        ball = GetComponent<Rigidbody>();
    }

    void FixedUpdate()
    {
        Vector3 gravity = globalGravity * Vector3.up;
        ball.AddForce(gravity, ForceMode.Acceleration);
    }

    void Force(float force)
    {
        ball.AddForce(Vector3.up * force, ForceMode.Impulse);
    }

    void OnCollisionEnter(Collision collision)
    {    
        Force(speed);
    }
}

Если мяч ударяется о плоскую поверхность, он движется вверх, как предполагает сценарий, но я обнаружил, что если онударяется о платформу, которая наклонена, тогда приложенная сила намного слабее, и мяч не отскакивает так высоко.Есть ли причина для этого, и способ, которым я могу получить равную силу независимо от того, с каким углом поверхности она сталкивается?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...