我想使用 .atlas 为角色运行动画,同时在屏幕上移动角色。 我能够使用图集模拟运行,但不知道如何同时移动它。 现在我用这个:
let animation = SKAction.animateWithTextures(frames, timePerFrame: 0.2)
monsterNode.runAction((动画))
。
最佳答案
例如,您可以对节点的物理主体施加力。这对于平台游戏来说非常有用,因为障碍物和地标会减慢角色的速度,使其更加真实。
let force = CGVector(dx: 9000, dy: 0)
self.physicsBody?.applyForce(force)
对于太空赛车或其他更简单的运动,您可以简单地对其应用速度
。
self.physicsBody?.velocity = CGVector(dx: 100, dy:10)
参见SKPhysicsBody reference了解更多。
更新: 对于非常简单的运动,您可以使用 SKAction 的 moveBy和 moveTo方法和group运动和动画。
let vector = CGVector(dx:100, dy: 10)
let moveAction = SKAction.move(by: vector, duration: 1)
yourNode.run(SKAction.group([moveAction, animationAction])
关于swift - 雪碧包 : Animate node with running atlas and move node,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43077558/