Я изучаю SpriteKit, в частности, как применить эффект SKEmitterNode к существующему SKSpriteNode.Контролировать размер SKEmitterNode "area"?
Я играл в редакторе частиц и делал простую «дождевую» частицу. Затем я подключил, что к существующему спрайт, в моей игре, как так:
let emitter = SKEmitterNode(fileNamed: "RainParticle.sks")
emitter?.targetNode = dogSprite
// dogSprite is just an SKSpriteNode
dogSprite.addChild(emitter!)
Что я получаю это эффект, который выглядит следующим образом:
Эффект частиц применяется как я хотел бы ожидать и эффект - это то, что я собираюсь сделать. Единственное, что я хочу изменить, это «площадь» эффекта частицы.
Собачий спрайт 60x50, примерно. Я бы хотел, чтобы эффект частиц был «обрезан» в нижней части собачьего спрайта. Другими словами, я не хочу, чтобы частицы выходили за пределы «плитки» собачьего спрайта.
Есть ли способ сделать это, изменив свойства на эмиттере или мне нужно решить эту проблему под другим углом? Спасибо!
(На всякий случай, когда кто-либо замечает, ни одно из этих работ не является моим, и это не коммерческий проект. Я просто захватил некоторые спрайты, которые мне нравились в Интернете, чтобы учиться! Я все для соблюдения лицензий.)
Спасибо за указание SKCropNode - это похоже на поведение, которое я хочу. Но я попытался подключить его аналогично вашему примеру, и эмиттер не появляется. – bitops
Попытайтесь исправить zPositions для эмиттера и dogprite –
похоже, что это может быть ошибка в iOS! http://www.openradar.me/22821166 – bitops