unity3d中避免游戏物体绑定的音频在物体被销毁时无法播放
生活随笔
收集整理的這篇文章主要介紹了
unity3d中避免游戏物体绑定的音频在物体被销毁时无法播放
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
之前的代碼段如下:
public AudioSource audioSource;Update(){if(audioSource!=null){audioSource.play();Destory(gameObject);}}在觸發銷毀后會讓物體銷毀并且連同綁定在物體上的音頻一同銷毀,導致無法按照預期效果播放音效。
1. 可以采用 static void PlayClipAtPoint(AudioClip audioClip,Vector3 position, float volume(0-1f)):
public AudioClip audioClip;Update(){if(audioClip!=null){AudioClip.PlayClipAtPoint(audioClip,position,1f);Destory(gameObject);}}Ps:會在指定位置生成一個One shot audio播放完后自動刪除,但是在2D場景時會出現播放音量過小的情況,需要修改position的z軸位置,改為當前2D相機的z軸位置即可解決音量問題。
2. 在主類型中聲明一個音頻,綁定銷毀音頻的預制件,銷毀物體前使用Instantiate函數克隆,播放完成后銷毀。
?
總結
以上是生活随笔為你收集整理的unity3d中避免游戏物体绑定的音频在物体被销毁时无法播放的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 随机生成电话号码
- 下一篇: 浅谈精益生产方式的优越性及其意义