私はSpriteKitの学習中です。特に、既存のSKSpriteNodeにSKEmitterNodeエフェクトを適用する方法について説明しています。SKEmitterNode "area"サイズを制御していますか?
私はパーティクルエディタで遊んで、シンプルな "雨"パーティクルを作りました。私が期待するようパーティクルエフェクトが適用され
:
let emitter = SKEmitterNode(fileNamed: "RainParticle.sks")
emitter?.targetNode = dogSprite
// dogSprite is just an SKSpriteNode
dogSprite.addChild(emitter!)
私は何を取得すると、このように見える効果である:私はそのようにのように私のゲーム内の既存のスプライトにすることを接続しますエフェクトは私が進めていることです。私が変更したいのは、パーティクルエフェクトの「領域」だけです。
犬スプライトは大体60x50です。パーティーエフェクトを犬のスプライトの一番下に「切り取る」ようにしたいと思います。言い換えれば、私は粒子が犬のスプライトの「タイル」の外側を移動することを望んでいません。
エミッタのプロパティを変更することでこれを行う方法はありますか、またはこの問題を別の角度から来なければなりませんか?本当にありがとう!
(この作品のどれも私のものではありません。商用プロジェクトではありません。私はウェブから好きなスプライトを手に取っただけで、ライセンスを遵守しています。
SKCropNodeを指摘してくれてありがとう - それは私が望む動作のように見えます。しかし、私はあなたの例に似てそれを接続しようとエミッタは表示されません。 – bitops
エミッタとドッグスプライトのzPositionsを修正してみてください –
これは実際にiOSのバグかもしれません! http://www.openradar.me/22821166 – bitops