草庐IT

Sprite-kit

全部标签

ios - UIVisualEffectView 创建一个灰色框而不是模糊

我正在使用UIVisualEffectView在SpriteKit中模糊屏幕的一部分,如下所示:letblur:UIBlurEffect=UIBlurEffect(style:UIBlurEffectStyle.Dark)letUIEffectView:UIVisualEffectView=UIVisualEffectView(effect:blur)UIEffectView.frame=CGRectMake(0,0,frame.width,frame.height*0.15)self.view?.addSubview(UIEffectView)但它显示为灰色阴影区域而不是模糊区域。奇

ios - 有没有办法更改 iOS 设备上的加速度计引用

我正在开发一款SpriteKit游戏,该游戏使用CMMotionManager根据加速度计和陀螺仪数据移动对象。目前,如果我测试该应用程序并且在我坐下或站立时将设备平放在手中,它会很好用。但是,如果一个人躺下,所以设备不是平的,而是从一开始就在x轴上倾斜(在横向模式下),则对象会移动到底部,并且由于引用距离太远,因此无法移动对象并玩游戏。所以我很好奇,如果可能的话,如何检测设备没有平放并相应地调整加速度计/陀螺仪引用点。 最佳答案 您可以在开始时存储一份Attitude的副本,稍后将其用作计算移动的引用:classMotionMan

swift - SpriteKit - 获取 SKSpriteNode 的权重

我有一个应用程序,大盒子落在小红色盒子的顶部。我想知道红色小块何时达到一定重量(Xblock放在它上面)。我找不到红色block的权重属性。有什么建议么?编辑:只是为了澄清。从顶部掉落的盒子大小随机,从随机位置掉落。所以并没有真正的方法来跟踪落在红色方block顶部的东西。我需要一些方法来测量施加到红色block上的向下力 最佳答案 您可以通过以下方式计算每个节点的权重,然后将它们相加。redBox.PhysicsBody?.mass 关于swift-SpriteKit-获取SKSpri

ios - SKAudioNode 崩溃 : AVAudioPlayerNode. mm:333:开始:所需条件为假:_engine->IsRunning()

我有一个简单的SKAudioNode:让backgroundSound=SKAudioNode(fileNamed:"backgroundSound.mp3")我用播放backgroundSound.runAction(SKAction.play())和backgroundSound.runAction(SKAction.stop())来停止。一切正常,直到应用进入后台模式,我将在3分钟以上恢复。如果我进入后台模式并在10-20秒后恢复,音频不会崩溃。所有崩溃日志:2016-05-2923:26:43.612PippiPompiere[1070:199471]23:26:43.611E

ios - OBD2Kit Swift 示例无法进行类型转换,一直为零

由于没有使用OBD2Kit和Swift的示例代码,我将其fork到https://github.com/YannisDC/OBD2Kit中并将其用作pod。我翻译了一些OBJ-C示例代码,但似乎无法将FLWiFiScanTool向下转换为ELM327类型。为什么我总是得到零?importUIKitimportOBD2KitclassViewController:UIViewController,FLScanToolDelegate{@IBOutletweakvarhostIpAddress:UITextField!varscanTool:ELM327!@IBOutletweakvars

swift - 场景大小内的节点位置

在我的SKScene中,我正在制作一个简单的太空射击游戏。无论在哪个iPhone上玩游戏,我如何才能确保我的敌人总是出现在屏幕尺寸内?换句话说,我如何计算场景大小的最大和最小X坐标,更重要的是,我如何根据运行游戏的iPhone了解当前场景大小? 最佳答案 不要根据iPhone型号调整场景大小,让Sprite-kit做这种工作:scene.scaleMode=SKSceneScaleMode.ResizeFillThesceneisnotscaledtomatchtheview.Instead,thesceneisautomatica

swift - 多孔边界

我刚刚为我的游戏设置了一个边界,它似乎工作正常,直到它真的被强制,就像我让我的角色朝它跑了几秒钟,然后我的角色就​​会直接穿过。对此有何解释以及如何解决?编辑:这是我的边界代码funccreateSceneContents(){self.backgroundColor=.blackself.physicsBody=SKPhysicsBody(edgeLoopFrom:self.frame)}createSceneContents()ship.physicsBody=SKPhysicsBody(rectangleOf:ship.size)ship.physicsBody?.affecte

ios - 截图在模拟器中有效,但在真实设备上失败

我有以下代码截取游戏屏幕截图,然后在点击“分享”按钮时分享它。它在模拟器上运行良好并返回正确的图像。但是,在我的真实设备上,它返回一个白色图像。每次。代码如下:overridefunctouchesBegan(_touches:Set,withevent:UIEvent?){letTouch:UITouch!=touches.firstletTouchLocation=Touch.location(in:self)ifletbody=self.physicsWorld.body(at:TouchLocation){ifbody.node!.name=="shareButton"{let

ios - SpriteKit - 在 Gamescene.sks 中创建 Sprite 并在另一个类中引用

我知道我可以在GameScene.swift中使用以下内容来引用我在关卡编辑器中创建的Sprite:ball=childNode(withName:"ball")as?SKSpriteNode如果我想从Ball类中引用那个球怎么办?以下是我认为可行的方法。我错了。在关卡编辑器中,我为球指定了自定义类Ball。1.我在GameScene.sks中创建了一个球Sprite并为其分配了Ball的自定义类:这是我自定义的Ball类。(你可以忽略这些内容,因为它不起作用。)classBall:SKSpriteNode{init(){letsize=CGSize(width:35,height:3

ios - SKTileMapNode:创建无限大小的瓦片 map

在AppleDocuments上它声称你可以制作一个无限大小的SKTileMapGeneratingproceduralgame-worldmapsresemblingnaturalterrain.Youcancreategameworldofinfinitesizebyusingproceduralnoiseasitsunderlyingrepresentation,andmanagestorageandmemoryefficientlybycreatingnoisemaps(andtheirvisualrepresentations)onlyfortheareaaroundapla