敵とプレイヤーのスプライトがz:0に追加されたGameSceneがあります。z:-1でGameSceneに背景レイヤーを追加します。これは、メインの背景で正常に機能します。唯一のことは、いくつかの雲を表示したいということです。このため、それらはプレーヤーと敵のスプライトに対してz:1である必要があります。
私のアプローチは、背景レイヤーのz:2に雲を追加することですが、敵やプレーヤーのスプライトの下にまだ表示されているため、これでは十分ではありません。
z値(2)がバックグラウンドレイヤーのz値(-1)に追加され、絶対的な(GameScene親レイヤーと比較して)z:1のz値、つまりz:0より上になると思いました。敵とプレイヤーのスプライトの。
明らかに私は間違っています。
次に、スプライトをレイヤーに追加すると、最後に追加されたスプライトが同じレイヤーにある場合は前のスプライトの上に表示されることを確認しました(たとえば、プレーヤースプライトの後に敵を追加すると、プレーヤースプライトの上に敵が表示されます)。これは、奇妙なグラフィック効果(色が混ざり合う2つの画像のオーバーレイ)を回避するための規則だと思います。これは正しいです?
さて、私の唯一の解決策は、複数の背景レイヤー(1つは雲用、もう1つは実際の背景地形用)を用意し、それらをGameSceneのさまざまなzレベルに追加することです。これは正しいでしょうか?これの欠点は、論理的に類似しているクラスを維持する必要があることです。