Пусть мои частицы позволяют отслеживать движение на сцене в SpriteKit даже в дочернем узле

Я хочу такой же эффект, как в этом проекте

Но мои частицы SKEmitterNode не непосредственно в сцене, а в дочернем узле. Мои частицы - это эффект реактора позади моего космического корабля, и я хочу, чтобы он оставил след на сцене, когда узел космического корабля движется.

Прямо сейчас мои частицы являются дочерним узлом моего космического корабля, поэтому "все" частицы движутся вместе с космическим кораблем, поэтому он отображает только точку и не оставляет следа.

Как мне это сделать?

2 ответа

Решение

Вам нужно установить targetNode на вашем эмиттере, чтобы быть вашим SKScene,

Я использую этот, чтобы быстро создать след за кораблем по SKEmitterNode.

sparkEmmiter.targetNode = self.scene

Где sparkEmmiter является объектом SKEmitterNode. и сделать это ребенку корабля.

ship.addChild(sparkEmmiter)

Где корабль - объект SKSpriteNode.

Другие вопросы по тегам