对于我的生活,我不能理解为什么它停止循环。我有一个引擎加速脚本,工作得很好,除了它停止循环后的一段时间的事实。我只是调用音频源停止,如果用户按下一个按钮,它应该工作得很好。它已经工作之前,实现这一点,我不知道是什么打破了它。
private void PlayAccelerateSound()
{
m_audioSource2.loop = true;
m_audioSource2.clip = m_engineSound;
if (!alreadyPlayed)
{
m_audioSource2.PlayOneShot(m_audioSource2.clip);
alreadyPlayed = true;
}
if (rb.velocity.x < minPitch)
{
m_audioSource2.pitch = minPitch;
}
else if (rb.velocity.x > maxPitch)
{
m_audioSource2.pitch = maxPitch;
}
else
{
m_audioSource2.pitch = rb.velocity.x;
}
}
1条答案
按热度按时间hi3rlvi21#
通过使用
m_audioSource2.Play()
而不是m_audioSource2.PlayOneShot(m_audioSource2.clip)
修复了此问题。