Top.Mail.Ru
Ответы

Как в Unity избавиться от одновременного воспроизведения звуков?

К примеру Игрок столкнулся с двумя объектами одновременно, как воспроизвести один звук, а не два?

По дате
По рейтингу
Аватар пользователя
Новичок
9мес

Чтобы избежать одновременного воспроизведения звуков в Unity при столкновении объектов, используйте метод PlayOneShot() для воспроизведения звука. Он позволяет воспроизводить звук только один раз, даже если вызывается несколько раз подряд.

Также можно создать глобальный объект с AudioSource, который будет управлять звуками. При столкновении проверяйте, был ли уже воспроизведён звук, чтобы предотвратить его повторное воспроизведение. Например:

123456
 void OnCollisionEnter(Collision col) { 
    if (!soundPlayed) { 
        audioSource.PlayOneShot(soundClip); 
        soundPlayed = true; 
    } 
} 

Это обеспечит воспроизведение только одного звука при нескольких столкновениях.

Аватар пользователя
8мес

Никак