我正在使用 SpriteKit(使用 Xcode 6 和 Swift),我在屏幕上有一个角色,我用屏幕上的操纵杆四处移动,我想在他身后留下一点痕迹。我该怎么做?
我的图像需要多大,它需要看起来像什么? 另外,我会在我的代码中使用什么?
最佳答案
你应该看看SKEmitterNode
;它会“发出”粒子,您可以将其用作踪迹。您可以通过在项目中添加“SpriteKit 粒子文件”来直接在 Xcode 中设计粒子的外观和感觉:
然后将粒子文件加载到新的 SKEmitterNode
中,如下所示:
let emitter = SKEmitterNode(fileNamed: "CharacterParticle.sks")
然后您需要将 SKEmitterNode
的 targetNode
属性设置为您的 SKScene
,这样它发射的粒子就不会移动与你的角色(即他们留下踪迹):
emitter.targetNode = scene
然后将您的发射器
添加到角色的SKNode
。假设您的角色有一个名为 character
的 SKNode
,在这种情况下,代码将简单地为:
character.addChild(emitter)
通常这种事情会在场景的设置方法中完成(在 Apple 的 SpriteKit 模板中,它通常在 didMoveToView
中)。它也可以在您角色的自定义 SKNode
或 SKSpriteNode
类中完成,如果您有的话。如果你把它放在 didMoveToView
中,它看起来像这样:
override func didMoveToView(view: SKView) {
// ... any character or other node setup ...
let emitter = SKEmitterNode(fileNamed: "CharacterParticle.sks")
emitter.targetNode = self
character.addChild(emitter)
// ... any other setup ...
}
关于swift - 我如何在 SpriteKit 中在我的角色后面留下痕迹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25368830/