我正在學習SpriteKit,特別是如何將SKEmitterNode效果應用於現有的SKSpriteNode。控制SKEmitterNode「區域」大小?
我在粒子編輯器中玩過,做了一個簡單的「雨」粒子。然後我連接,爲現有的精靈在我的遊戲,像這樣:
let emitter = SKEmitterNode(fileNamed: "RainParticle.sks")
emitter?.targetNode = dogSprite
// dogSprite is just an SKSpriteNode
dogSprite.addChild(emitter!)
我得到的是,看起來像這樣的效果:
如我期望的粒子效果應用效果就是我要做的。我唯一希望改變的是粒子效應的「面積」。
狗的精靈大概是60x50。我希望粒子效應在狗精靈的底部「切斷」。換句話說,我不希望這些粒子在狗精靈的「瓦片」之外傳播。
有沒有辦法通過改變發射器的屬性來做到這一點,或者我必須從另一個角度來解決這個問題嗎?非常感謝! (只是爲了防止任何人注意到,這些作品都不是我的,這不是一個商業項目,我只是抓住了一些我喜歡的精靈來學習!我都是爲了遵守許可證)。
謝謝指出SKCropNode - 它看起來像我想要的行爲。但是,我試圖將其與您的示例類似,並且不顯示發射器。 – bitops
嘗試更正發射器和dogsprite的z位置 –
看起來這可能實際上是iOS中的錯誤! http://www.openradar.me/22821166 – bitops