【发布时间】:2015-03-11 00:56:30
【问题描述】:
我正在考虑类似于滑雪 safari 的东西,如下面的链接所示。 使用 SKActions 使用静态精灵创建侧滚动效果非常简单,但是如果我想在随机山丘中使用相同的精灵(矩形),是否需要在每一帧都转换精灵以创建新的山丘?如果是这样,您如何从 SpriteKit 中转换精灵?我觉得在移动平台上运行时会导致大幅帧率下降
如果不是,这是否意味着您必须自己创建斜坡并随机编程?
为了完整起见,下面是我如何生成一个简单的滚动楼层:
func makeBackground(){
var backgroundTexture = SKTexture(imageNamed: "sprite-floor")
var shiftBackground = SKAction.moveByX(-backgroundTexture.size().width, y: 0, duration: 1.4)
var replaceBackground = SKAction.moveByX(backgroundTexture.size().width, y: 0, duration: 0)
var movingAndReplacingBackground = SKAction.repeatActionForever(SKAction.sequence([shiftBackground, replaceBackground]))
for(var i: CGFloat = 0; i < 5; i++){
let background=SKSpriteNode(texture: backgroundTexture)
background.anchorPoint = CGPointZero
background.size.height = self.frame.height / 10
background.position = CGPoint(x: backgroundTexture.size().width/2 + (backgroundTexture.size().width * i), y: background.size.height)
background.runAction(movingAndReplacingBackground)
self.addChild(background)
}
}
(由于某种原因,SO 图像上传器无法正常工作,所以这里是指向我的示例的链接:http://www.unwinnable.com/wp-content/uploads/2012/04/Ski.jpg)
【问题讨论】:
标签: objective-c swift sprite-kit