问:当我的播放器向上移动时,如何沿y轴移动对象?

时间:2015-09-14 21:15:52

标签: swift sprite-kit

创建一个像Doodle Jump这样的游戏,我的玩家通过跳出障碍物不断向上移动。我已经尝试了书中的每一个技巧,但似乎没有任何工作/正在做我想要的。谁能给我一些提示?

1 个答案:

答案 0 :(得分:1)

iOS 9推出了Camera Node。使用SKCameraNode,它是SKNode的子类,可以相同的方式进行翻译和旋转。

因此,您可以简单地将场景的相机节点附加到您的英雄/玩家,而不是将所有背景元素移动到您的英雄/玩家的相反方向,其余部分将由此处理。

PS。你也可以做一些很酷的事情,比如缩放相机尺寸。

EDIT。

很高兴收到一个例子。

首先,在场景中使相机保持不变。

import SpriteKit

class myFirstScene: SKScene {
  let myCamera: SKCameraNode = SKCameraNode()
  ...
}

然后在didMoveToView()功能中,将场景的内置摄像机变量分配给我们之前制作的摄像机常数。

override func didMoveToView( view: SKView ) {
  camera = myCamera
  ...
}

现在,有几种不同的方式来附加"你的相机给你的英雄/玩家。第一种是将相机节点连接到你的英雄。

hero.addChild( myCamera )

我甚至不知道它是否能够轻松实现,因为我的游戏使用了不同的东西,下面是一个更简单的版本。

update(){
  camera!.zRotation = hero.zRotation
  camera!.position = hero.position
}