如何在触摸时停止更改zPosition的SKSpriteNodes

时间:2014-08-17 10:09:23

标签: sprite-kit skspritenode touches zposition

触摸节点时,我遇到了zPosition不合需要的问题。

我无法提供一个简单的代码示例,因为目前我的场景和渲染非常复杂。当场景被呈现时,一切都被正确绘制,并且除了下面描述的大部分之外它都有效。

所以问题解释了 - 我们在塔节点(塔防游戏)下面有一个正确渲染的基础图像节点。塔是圆形的,基本图像是方形的,因此角落伸出。如果你设法碰到角落,出于某些我不知道的原因,zPosition会改为塔顶。

在游戏中没有特定的代码来更改游戏中任何内容的任何zPosition。

我知道这是一个黑暗中的镜头,但任何见解都会很棒并且非常感激。

1 个答案:

答案 0 :(得分:0)

如果设置了视图的ignoreSiblingOrder属性,则应适当地设置每个节点的zPosition,以确保以正确的顺序绘制它们。

来自Apple的文档......

  

默认值(SKView的ignoreSiblingOrder属性)为NO,   这意味着当多个节点共享相同的z位置时,那些   节点按确定的顺序排序和呈现。父母是   在他们的孩子面前呈现,兄弟姐妹是从老年人那里呈现的   最小的当此属性设置为YES时,该位置   确定渲染顺序时,将忽略树中的节点。   同一z位置的节点的渲染顺序是任意的,每次渲染新帧时都可能会改变 [强调添加]。