Я пытаюсь объединить свои узлы эмиттера частиц. Я повторно использую их, когда они необходимы, удаляя их из их старого родительского узла и добавляя их в качестве дочернего элемента SKSpriteNode в новом месте. Я оставляю положение узла эмиттера равным 0,0, поэтому эмиттер должен появиться в центре своего нового родительского узла спрайта.
Эмиттеры отображаются правильно при первом добавлении в качестве дочернего элемента к узлу спрайта, но просто не отображаются при последующих попытках. Все это отлично работало в iOS8 и не работает только в iOS9 (похоже, много ошибок с эмиттерами частиц в iOS9?)
Вот базовый пример моего кода, когда мне нужно разместить эффект частиц:
if emitter.parent != nil {
emitter.removeFromParent()
}
newLocationSpriteNode.addChild(emitter)
emitter.resetSimulation()
Это отлично работало в iOS8 — я мог повторно использовать свои эмиттерные узлы в новых местах. В iOS9 узлы появляются только при первом запуске этого кода и больше никогда не появляются после этого. Есть ли у вас какое-либо представление о том, как я могу обойти эту проблему? Спасибо!