使用SpriteKit相机节点防止位置偏移

时间:2016-02-29 17:23:29

标签: ios camera sprite-kit path-finding gameplay-kit

我注意到centerOnNode:方法如图所示,

- (void)centerOnNode:(SKNode *)node {

    cameraOffset = [node.scene convertPoint:node.position fromNode:node.parent];
    node.parent.position = CGPointMake(node.parent.position.x - cameraOffset.x, node.parent.position.y - cameraOffset.y);

}

极大地影响子节点的相对位置。一旦此方法运行,子节点实际上似乎受到影响。下图显示NO运动的逻辑,然后向左和向下移动:

enter image description here enter image description here

我画了一个浅蓝色的盒子来估计路径所引用的物理体,而不是更新的帧。您看到的线条和圆圈代表我用于寻路的2种方法。

  • 带点的线只是我正在做的光线测试,看看沿着绿线的光线是否与方形物理体相交。
  • 您在顶角看到的单点是使用GameplayKit构建一条避免黑方作为障碍的路径。

我正在努力弄清楚如何避免相机重新定位以影响场景中儿童的定位。

仅供参考:我已经通过移动角色而不是相机来测试路径寻找并且它完美地工作(如下所示)

enter image description here

显然,相机偏移是个问题。如果有人能告诉我如何保持相机运动和寻路的精确度,我将非常感激。

0 个答案:

没有答案