草庐IT

Spritekit

全部标签

xcode - SpriteKit 着色器不与制服一起运行

//将其张贴以防有人遇到同样的问题。原始问题:将一个着色器移植到OSX,并尝试为它提供一个制服。着色器实际上并未运行。这是在:XCode7.3,Swift2。游戏场景.swift:varmyShader=SKShader();overridefuncdidMoveToView(view:SKView){////////////////////////////////////CreateSKShaderletshaderContainer=SKSpriteNode(color:NSColor.grayColor(),size:CGSizeMake(300,300));shaderCont

ios - SpriteKit SKCameraNode - 在分配后展开可选值时为零

我在iOS应用程序中使用SpriteKit,并尝试在覆盖的didMoveToView方法中初始化我的SKScene的camera属性。如果我像这样初始化它:overridefuncdidMoveToView(view:SKView){...self.camera=SKCameraNode()self.addChild(self.camera!)}...它在self.addChild行抛出异常unexpectedlyfoundnilwhileunwrappinganOptionalvalue,但如果我这样做:overridefuncdidMoveToView(view:SKView){.

swift - SpriteKit 起源和手势角度

我是SpriteKit的新手,对于初学者的问题深表歉意。我有两个对象,用户可以从中滑动到“目标”方向。我需要确定起始点(即触摸来自两个对象中的哪一个)和滑动角度。我可以自己使用touchesBegan和touchesEnded来计算它们,但想知道是否有任何其他方法可以用Sprite来完成。谢谢。 最佳答案 总是有另一种做某事的方式——这就是编程!但是,正如RubeGoldberg在下面演示的那样,另一种方法可能不是最好/最简单的方法:使用touchesEnded,您可以做出类似于“throw”的手势,其功能可能会有所限制。例如,如果

ios - swift ,SpriteKit : how to save the whole progress of a scene

我用“GameViewController.swift”构建了一个swift游戏importUIKitimportSpriteKitclassGameViewController:UIViewController{overridefuncviewDidLoad(){super.viewDidLoad()ifletscene=GameScene(fileNamed:"GameScene"){//Configuretheview.letskView=self.viewas!SKView/*Setthescalemodetoscaletofitthewindow*/scene.scaleMo

swift - 使用 SpriteKit 快速初始化 var?

如何使用SpriteKit正确地初始化swift?这可以编译,但一旦模拟器开始运行,我就会收到错误消息。“swift_reportUnimplementedInitializer”importSpriteKitclassGameScene:SKScene{varpaddlePositionUpdate:CGPointinit(paddlePositionUpdate:CGPoint){self.paddlePositionUpdate=CGPoint.zeroPointsuper.init()}} 最佳答案 SKScene的指定初始

ios - 如何使用 SpriteKit 将节点固定在某个位置

我使用SpriteKit创建了一个世界,其中包含一个SKShapeNode。我想把它系在天花板上。重力和其他东西仍然对这个形状有影响,但它应该卡在天花板上。就像一盏灯,或者一根绳子。我的形状:letshape=SKShapeNode(rectOfSize:CGSize(width:self.tamanhoQuadrado,height:self.tamanhoQuadrado))当我添加这个时:shape.physicsBody=SKPhysicsBody(rectangleOfSize:CGSize(width:self.tamanhoQuadrado,height:self.tam

Swift 和 SpriteKit : Move two sprites as one cohesive unit?

是否可以在Swift中将两个Sprite作为一个整体移动?假设我们有两个矩形。我们如何确保两个矩形一起移动,就像它们形成一个Sprite一样?现在,我们在同一runBlock内对两个Sprite使用moveTo,为两个Action赋予相同的属性(例如,计时模式、持续时间)。有更好的方法吗? 最佳答案 您可以将两个节点添加为SKNode实例的子节点,然后只需移动父节点:letrectNode1=SKShapeNode(rect:aRect)letrectNode2=SKShapeNode(rect:aRect)letparentNod

objective-c - 无法让粒子跟随 spriteKit 中的路径

这是XCodeSKEmitter编辑器中的动画(我想在iPhone上实现):这是iPhone上的动画(我不要这个动画):使用这段代码:letsparkEmmiter=SKEmitterNode(fileNamed:"fireflies.sks")self.addChild(sparkEmmiter)//selfisaSKScenevarcircle:CGPathRef?=nilcircle=CGPathCreateWithEllipseInRect(CGRectMake(400,200,200,200),nil)letfollowTrack=SKAction.followPath(ci

ios - 程序 map 生成 - SpriteKit 和 GameplayKit

我有以下代码使用新的GameplayKit的GKNoise生成噪音。我不确定如何将它与SKTileMapNode一起使用。有人试过这个吗?目前,噪声应用于每个图block,但未应用于整个TileMap。有没有办法将生成的噪声用于整个map?letnoise:GKNoise=GKNoise(noiseSource:GKPerlinNoiseSource())letnoiseMap:GKNoiseMap=GKNoiseMap(noise:noise)lettexture:SKTexture=SKTexture(noiseMap:noiseMap)lettileDef=SKTileDefin

ios - SpriteKit 定位和坐标系

我的项目中有一个空白的SKScene,我尝试将一个盒子添加到场景中,如下所示:letblueBox=SKSpriteNode(color:UIColor.blueColor(),size:CGSize(width:100,height:100))blueBox.anchorPoint=CGPoint(x:0,y:0)blueBox.position=CGPoint(x:0,y:0)addChild(blueBox)由于某种原因,该框没有出现在屏幕上。如果我对定位坐标的理解是正确的anchorPointof0,0andpositionof0,0表示“将点0,0视为蓝框的左下角”。所以我希