1

对于我使用 SpriteKit 的 iOS 游戏。我在场景中有一个相机节点。

var cam = SKCameraNode()
self.camera = cam

//THIS WORKS, view zoomed out to 2x
cam.setScale(2)

//I want to animate the zoom out, but this doesn't work
let zoomOutAction = SKAction.scaleTo(2, duration: 1)
cam.runAction(zoomOutAction)
4

2 回答 2

2

我修复了它,只需添加以下行:self.addChild(cam)

var cam = SKCameraNode()
cam.position = CGPointMake(size.width/2, size.height/2)
self.addChild(cam)
self.camera = cam
于 2016-09-04T18:08:06.227 回答
0

不知道你是否还有这个问题,但希望这会有所帮助……</p>

我在使用 moveToY SKAction 移动 SKCameraNode 时遇到了类似的问题。即使直接设置位置或在 runBlock SKAction 中设置位置,该操作也不起作用。它会开始,但在结束后跳回原来的位置。使用 runAction(withKey:) 使其运行完成。尝试类似:

cam.runAction(zoomOutAction, withKey:"zoom")

希望这很有用。

于 2016-09-02T22:46:14.397 回答