Используйте SKAction.playSoundFileNamed
. Когда вы создаете экземпляр SKAction
раньше времени, он выполняет всю необходимую подготовку для выполнения действия (в данном случае, воспроизведения звука) без запаздывания во время игрового процесса. Чтобы запустить действие (воспроизвести звук), вызовите runAction
на узле - это может быть любой узел, даже сама сцена.
Так как не имеет значения, какой узел вы используете для звуковых целей, используйте то, что наиболее удобно. Например, если вы просто воспроизводите звук, вы можете называть runAction
на сцене. Но если ваш звук является частью группы действий или последовательности, которые, скажем, оживляют спрайт, вы можете сделать звук частью действия этой последовательности и воспроизвести ее на спрайте, который вы анимации.
См. Руководство по программированию SpriteKit .
Не связанный свиток Swift: используйте let
вместо var
для ссылок, которые не будут меняться. Это может помочь вам избежать появления ошибок позже, и, вероятно, это поможет компилятору оптимизировать ваш код.