Я изучаю SceneKit, и у меня есть следующий код, который воспроизводит звук, когда мой мяч ударяется о стену.
if contactNode.physicsBody?.categoryBitMask == CategoryWall {
let hitSound = sounds["bump"]!
ballNode.runAction(SCNAction.playAudio(hitSound, waitForCompletion: true))
}
Это работает, однако я хочу воспроизвести звук только тогда, когда мяч сначала ударяется о стену, в настоящее время он катится по стене, и это заставляет звук повторяться и, следовательно, вызывает проблемы.
Я попытался изменить waitForCompletion на false или true, это не помогло.
Есть ли метод или атрибут, который можно настроить для проверки первоначального контакта, а затем сброса после разрыва контакта?
заранее спасибо.
Кев