【发布时间】:2015-07-02 17:31:11
【问题描述】:
我有一个游戏,其中有几个教程场景。
我可以使用AVFoundation 和AVAudioPlayer() 为每个场景添加音乐。
我需要做的是能够在特定场景中启动音乐,并让它继续在后台播放相关场景。
例如:
- 在教程菜单中启动
tutorialMusic - 在教程 A 中继续
tutorialMusic - 在教程 B 中继续
tutorialMusic - 在教程菜单中继续
tutorialMusic - 在主菜单中停止
tutorialMusic并播放mainMenuMusic
我的尝试
我尝试将AVAudioPlayer() 放在视图控制器中,但是我发现它会传播到每个场景,无论它是什么。我也无法找到视图控制器的 AVAudioPlayer 实例来阻止它。
我已经尝试将tutorialMusic 添加到每个教程场景中,但是每次用户打开不同的教程场景时都会重新启动音乐,这很草率,如果用户快速移动,它会降低性能并且真的很烦人.
我的问题
有没有办法在每个子教程场景中扩展主教程场景,以便AVAudioPlayer 的主实例可以访问并在每个教程中传播?
最终我想确保在每个部分(教程菜单场景、教程 A 场景、教程 B 场景等)中,tutorialMusic 仅启动一次并持续播放,直到用户退出回到主菜单。
谢谢!
【问题讨论】:
标签: swift sprite-kit avfoundation avaudioplayer