所以这是我的情况。
我有从屏幕顶部产生并发射到屏幕底部的发射器,我正试图让png图像跟随它们(用于命中检测)
问题是我需要实时更新PNG图像以跟踪skemitternode,因为我生成了几个发射器节点的实例,我不能使它们成为全局变量(需要为n个实例设置一个新的本地化集合)< / p>
因此,我提出的解决方案是使用while循环继续将PNG更新为发射器节点坐标。当粒子数小于500(我设定的粒子寿命)时,循环的条件将继续。
我无法让png图像继续使用skemitter节点。它始终高于它或失去跟踪。
目前我正在使用:
while (particle < 5000) {
enemySmoke.position = Enemy.position
particle++
}
其中enemySmoke是沿Y轴向下移动的SKEmitter节点
var action = SKAction.moveToY(SH-SH, duration: 10 - duration)
// Basically moving to bottom of screen faster with each spawn as I have
// duration variable incrementing.
enemySmoke.runAction(SKAction.repeatActionForever(action))
Enemy.runAction(SKAction.repeatActionForever(action))
如何让发射器和png保持在一起?
答案 0 :(得分:0)
要SKEmitterNode
&#39;关注&#39;一个SKSpriteNode
,到目前为止,最简单的解决方案是将发射器作为SKSpriteNode
的子级,并仅移动SKSpriteNode
。例如:
sprite.addChild(emitter)
此时发射的粒子将被添加到SKSpriteNode
。这不是一个想法行为,因为粒子将与SKSpriteNode
一起移动。要解决此问题,您应该将targetNode
的{{1}}设置为SKEmitterNode
:
SKScene