Я работал над игрой в 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
Я уже сделал все физические свойства всех автомобилей такими же, как физический материал, значения свойств твердого тела и т. Д., А затем получаю различную реакцию на столкновение при каждом столкновении.
Дайте мне несколько советов, чтобы добиться чего-то подобного.