Всегда получайте одинаковую силу отскока при столкновении физики - PullRequest
0 голосов
/ 20 января 2019

Я работал над игрой в 3d автомобильную войну, и я двигал свои машины со скоростью, используя следующий код:

    appliedSpeed += Time.fixedDeltaTime * 8f;
    appliedSpeed = Mathf.Min (appliedSpeed, speed);
    myRigidbody.velocity = transform.forward * appliedSpeed;

Во время столкновения я давал обратную силу, используя следующий код:

private void ApplyReboundForce (Collision other)
{
    Vector3 reboundDirection = other.contacts [0].point - transform.position;
    reboundDirection = -reboundDirection.normalized;
//        myRigidbody.AddForce (reboundDirection * 7f, ForceMode.Impulse);
    myRigidbody.AddForce (reboundDirection * 180f, ForceMode.Force);
}

Но в настоящее время я получаю силу реакции на столкновение динамически.Иногда это была более высокая сила, а иногда - более низкая, основанная на физических расчетах. Я хочу, чтобы сила реакции на столкновение всегда была одинаковой.

Вот эталонная игра для силы реакции на столкновение:

SUPER ADDICTIVE NEW .io Game |Bumper.io

Я уже сделал все физические свойства всех автомобилей такими же, как физический материал, значения свойств твердого тела и т. Д., А затем получаю различную реакцию на столкновение при каждом столкновении.

Дайте мне несколько советов, чтобы добиться чего-то подобного.

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