Звук автомобиля по скорости? - PullRequest
0 голосов
/ 20 января 2019

Мне нужно изменить высоту звука моего автомобиля в зависимости от скорости.В настоящее время я использую решение ответа, который: https://answers.unity.com/questions/1067016/car-engine-sound-code-unity5car-engine-sound-code.html

public float topSpeed = 100; // km per hour
private float currentSpeed = 0;
private float pitch = 0;

void Update () 
{
     currentSpeed = transform.GetComponent<Rigidbody>().velocity.magnitude * 3.6f;
     pitch = currentSpeed / topSpeed;

     transform.GetComponent <AudioSource> ().Pitch = pitch;
}

В соответствии с этим начальный pitch является 0 И он меняется в соответствии с моим currentSpeed Т.е. - currentSpeed/ topSpeed поэтому, когда мой текущий speed = topSpeed pitch будет 1, и это хороший подход. Но в моем случае он воспроизводит звук, но когда однажды моя машина достигает topSpeed, он перестает воспроизводить звук, и никогда не воспроизводит его.опять же, даже если я притормаживаю и начинаю с нулевой скорости

Поскольку я новичок в промежуточном звене, я думаю, что это из-за того, что мое твердое тело автомобиля кинематическое, но я не знаю правильной причины и какого-либо решения этого.

...