我只是想知道如何从场景中移除SKSprite节点。这是我目前所拥有的:overridefunctouchesBegan(touches:NSSet,withEventevent:UIEvent){/*Calledwhenatouchbegins*/fortouch:AnyObjectintouches{letlocation=(touchasUITouch).locationInNode(self)iflettheName=self.nodeAtPoint(location).name{iftheName=="monster"{monster!.removeFromParent()}}
解释我正在尝试构建一个类似于CrossyRoad的角色选择菜单(如您所见here)。所以我找到了这个iCarousel,这对我有帮助,但我读到的所有内容都在谈论如何将它实现到ViewController,这不是我的情况。我正在使用GameScene但我没有发现任何关于它的内容。无论如何我可以将它实现到我的游戏中吗?甚至另一种类似于我上面提到的角色选择菜单的效果?尝试(beyowulf)可以下载here.GameScene.swiftimportSpriteKitclassGameScene:SKScene{varshow=SKSpriteNode()varhide=SKSpriteNo
目前正在开发一个应用程序,该应用程序需要通过一系列图像制作一些动画。我在网上做了很多关于如何解决我的问题的研究,但没有遇到任何关于Swift4的问题。下面是我的代码,它显示了我运行应用程序时循环中的第一张图片,但根本没有动画。一切看起来都很好,我没有发现我的代码有问题,但也许你们可以提供帮助。提前欣赏!letatlas=SKTextureAtlas(named:“mypic”)varTextureArray=[SKTexture]()varperson=SKSpriteNode()overridefuncdidMove(toview:SKView){person=SKSpriteNod
Apple推荐的在SpriteKit项目中组织Assets的方式在引擎的历史进程中发生了很大的变化。旧方法中也存在错误,这些错误阻碍了这些实践和所需变通办法的实现。SO上的旧Q&A充满了过时的信息,或者被关于处理不再存在的错误的信息所混淆。需要有一篇关于SO的帖子,告诉您如何实现该问题的当前解决方案,而不会因讨论过时的工作流或已解决的错误而分心。所以问题是:如何在SpriteKit项目中组织我的图像资源?一些Apple文档说到usetextureatlasestoimproveperformance.但是SKTextureAtlasclassreference描述了创建纹理图集和Spr
我目前正在使用此代码移动火箭:letlocation=touch.locationInNode(self)rocket.position.y=location.y我想知道使用SKActionTimingMode.EaseOut是否更容易,如果是这样,我如何使用SKAction让火箭沿Y轴上下移动。有没有办法用我已经在使用的代码顺利移动节点?该应用已设置为横向。 最佳答案 以下是使用SKAction的方法。我认为使用SKAction会更流畅。或者,您也可以将物理体附加到节点,并通过计算滑动的力来调用applyForce,或者如果它是触
我正在构建一个带有碰撞的iOSswift游戏。英雄正被来自屏幕右侧的小星星轰炸。每次星星击中英雄时,都会迭代分数并移除星星。但是,分数增加了不止一分。节点设置:varstar=SKSpriteNode(imageNamed:"star")star.size=CGSizeMake(30,30)star.zPosition=10varstarPhysicsRect=CGRectMake(star.position.x-star.frame.size.width/2,star.position.y-star.frame.size.width/2,star.frame.size.width,s
我有一个显示多个成就的游戏菜单,这些成就被定义为SKSpriteNodes,其中有18个,它们在位置上只有轻微的变化,这里是代码片段:Achievement1=SKSpriteNode(color:SKColor.whiteColor(),size:CGSize(width:100,height:100))Achievement1.position=CGPointMake(-120,100)page1ScrollView.addChild(Achievement1)Achievement2=SKSpriteNode(color:SKColor.whiteColor(),size:CGS
我正在对节点进行子类化以用于触摸检测。我有一个盒子parent,它旁边有一个线子,灰色空间只是空白:问题是当我点击灰色区域时,它会记录为对距离很远的框的触摸。这是我展示问题的代码,以及我糟糕的解决方法……我做了两组盒子,第一组是显示问题的,第二组是解决方法的:importSpriteKitclassGameScene:SKScene{enumsizez{staticletbox=CGSize(width:50,height:35),line=CGSize(width:200,height:10)}classBox:SKSpriteNode{overridefunctouchesBega
我正在构建我的第一个2D平台游戏,我希望使用arc4Random对每隔几秒生成的对象设置一些限制。目前,一只鸟会从右向左飞过屏幕,大多数时候这只鸟似乎在空中,但有时这只鸟在地面上看起来很奇怪。我想做的是设置生成鸟类的最小和最大高度,这可能吗?这里是一些代码...funcspawnBird(){varbirdP=SKNode()birdP.position=CGPointMake(self.frame.size.width+birdTexture1.size().width*2,0);birdP.zPosition=-10;varheight=UInt32(self.frame.size
尝试让Sprite“PlayButton”的比例继续放大和缩小以提示用户触摸它。似乎无法正常工作。这是菜单类:importSpriteKitclassMenuScene:SKScene{letScalePBup=SKAction.scaleX(to:300,y:300,duration:10)letScalePBdown=SKAction.scaleX(to:-300,y:-300,duration:10)//MARK:-PrivateInstanceVariablesprivateletlogo=GameLogo()privatelettitle=GameTitle()private