Моя цель - создать статический узел на фоне SKScene
. В этой сцене я использую SKCameraNode
для панорамирования по мере необходимости.SpriteKit: статический фон в сцене с перемещением SKCameraNode
Узел фона должен быть статичным, поскольку он представляет небо на большом расстоянии, которое, как ожидается, не будет двигаться.
Проблема:
Если бы я просто добавить фоновую узел, как ребенок на сцену, я бы переместить фон таким же образом, камера приготовлена для того, чтобы всегда полностью иметь фон видимый внутри камеры. Я не хочу этого делать, потому что фоновый узел имеет некоторые визуальные эффекты и фильтры, применяемые к нему, и поэтому его перемещение приводит к снижению производительности.
Что я хочу, имеет фон, выложенный в фоновом режиме как статический узел или представление, которое не нужно было бы перемещать, чтобы «следить» за камерой.
Что есть я попытался:
Я знаю, что узел может быть добавлен в качестве ребенка SKCameraNode
для того, чтобы убедиться в том, что следует за камерой. Но, как предполагает Apple, это полезно для элементов HUD, таких как метки ярлыков и т. Д., Которые обычно отображаются выше всего. Это, конечно, не применимо, если вы хотите добавить фон, так как я хочу, чтобы он был в фоновом режиме, за узлами, которые добавляются как дочерние узлы непосредственно на сцену.
Несмотря на то, что я попытался добавить фоновый узел в качестве дочернего узла к узлу камеры и играть с позицией z и тому подобным, но ничего не помогло, как и ожидалось.
Я также попытался добавить фон в качестве подпрограммы к корню SKView
, но по какой-то причине я не смог его отобразить позади сцены.
Заранее спасибо.
Что вы подразумеваете под 'connect the CameraNode не к сцене, а к отдельному« узлу панорамирования »? – damirstuhec
Ничего, это был тупик, но вышеизложенное должно работать нормально. –
Ваше решение работает. Я пробовал то же самое, но моя проблема заключалась в том, что я не добавлял свой «cameraNode» в качестве ребенка на сцену. Я был убежден, что мне не нужно явно это делать, поскольку уже существует свойство 'camera', предоставляемое системой, ожидающее инициализации и готовности к работе, если необходимо. Как ни странно, панорамирование и все остальное в отношении камеры работало так, как ожидалось, хотя я не добавлял его в сцену в качестве ребенка. Теперь это работает. Спасибо! – damirstuhec