skphysicsbody相关内容

Sprite Kit - 确定滑动手势的矢量以轻弹精灵

我有一个游戏,其中圆形物体从屏幕底部弹起,我希望能够滑动它们以朝我滑动的方向轻弹它们.我的问题是,我不知道如何计算滑动的矢量/方向,以便让圆形物体以适当的速度在正确的方向上轻弹. 我使用的静态向量“(5,5)"需要通过滑动速度和滑动方向来计算.另外,我需要确保一旦我第一次接触到物体,它就不再发生,以免双重撞击物体.这是我目前正在做的事情: -(void)touchesMoved:(NSSe ..
发布时间:2022-01-11 12:29:33 移动开发

如何使用 SpriteKit 在 Xcode 中将 SKSpriteNode 的物理主体大小拟合到其图像

所以我不确定这是否可能,但我正在尝试调整物理体以配合我的图像.很多人告诉我,我在 iOS App Store 上的游戏中的角色的碰撞箱(StreakDash - 去下载吧!)效果不佳,因为它使游戏变得更加困难(即使角色碰撞到了障碍物)似乎甚至没有触摸它).这是因为 hitboxes 是矩形的,而我的角色有一个奇怪的形状.有没有办法解决这个问题?我想到了一些不完全奏效的方法(例如,尝试将实际的框架/ ..
发布时间:2022-01-11 12:27:28 其他开发

身体从圆形更改为矩形时无法识别联系人

在 的帮助下在这里 我已经让一个圆形体穿过给定的路径.我在一些路径点有一些尸体,并在 didBeginContact 中记录了联系.当身体与特定身体接触时,圆形身体将变为矩形.假设这个矩形体穿过与原始圆形体相同的路径,但由于没有记录接触,它没有到达路径点.我也尝试将 radiusPoint 更改为矩形的宽度或高度,但这没有用.矩形体也比圆形体大.如何让矩形穿过识别出接触的点?请看下面的代码. ..
发布时间:2022-01-11 12:25:33 移动开发

如何检测物理体不同区域的接触

我想在 sprite-kit 游戏中实现经典的“爆头"效果. 我的想法和尝试: 在同一个精灵上创建单独的“body"和“head"physicsBodies,并用关节固定它们.不可能:( 在“敌人"精灵上创建一个“body"物理体,并创建另一个透明精灵,其“头部"physicsBody 跟随身体(位于顶部).这种方法要求我跟踪什么头部与什么身体相关联.它还会降低游戏效率.我很好奇 ..
发布时间:2022-01-11 12:22:45 其他开发

如何正确使用 allContactedBodies?

我想使用 allContactedBodies 而不是 didBeginContact &没有结束联系. 当我这样做时: NSLog(@"%@", node.physicsBody.allContactedBodies ); 并且正确的接触发生在对象上,我得到类似的东西: “< SKPhysicsBody>类型:其中矩形> representedObject:并[d ..
发布时间:2022-01-11 12:20:54 其他开发

SpriteKit 使用 applyImpulse 移动旋转的物理体

我想使用 applyImpulse 方法在基于 PhysicsBody 旋转的方向上移动一个physicsBody. 例如,physicsBody 是一个正方形,我称之为“移动",它会施加一个脉冲使其垂直向上移动.然后我调用一个方法将physicsBody 向右旋转45 度.如果我再次调用“move"方法,physicsBody 将沿对角线向右和向上移动. 解决方案 我建议你遵循 S ..
发布时间:2022-01-11 12:15:26 移动开发

当 shouldEnableLimits 为 true 并且设置了 lowerAngleLimit 和 upperAngleLimit 时,SKPhysicsJointPin 的行为不正确

我目前有一个布娃娃图,它由一个父节点(没有附加物理体)和许多子节点组成,每个子节点都由一个圆形体组成.圆圈之间使用 SKPhysicsJointPin 相互连接,如下所示: 每个 SKPhysicsJointPin 都有 shouldEnableLimits = true,我目前为 lowerAngleLimit 和 upperAngleLimit 分别. 这很有效,并且可以防止形状过 ..
发布时间:2022-01-11 12:07:31 其他开发

SpriteKit iPhone/iPad 不同的分辨率,需要相同的物理

当我将使用 SpriteKit 的 iPhone 应用程序移植到 iPad 时,我已经能够使用 iPhone 5 与 iPad 屏幕的高度比来缩放所有屏幕元素和字体大小. 一切看起来都是成比例的,除了物理,因为面积更大. 所以问题是,我如何使用该高度比缩放物理和屏幕? 也许会改变所有节点的密度或质量?我将如何做到这一点,在数学上使用比率使其完美? 解决方案 您可以配置 S ..
发布时间:2022-01-11 12:06:51 移动开发

SKFieldNode 磁节点吸引力

我目前正在使用 iOS 8 SpriteKit API,并且很难使用 SKFieldNode 创建有吸引力的磁力.我可以很好地产生相反的磁力,但是我不能反转磁场.这是我目前拥有的: touchField = [SKFieldNode 磁场];touchField.physicsBody = [SKPhysicsBody bodyWithCircleOfRadius:(self.frame.si ..
发布时间:2022-01-11 11:59:29 其他开发

物理多次检测碰撞

当球与杯子碰撞时,分数应该增加 1.但目前它会增加 1、3 或有时是 4,这意味着多次检测到碰撞. 我想我一定是错误地检查了碰撞: 让 ballCategory : UInt32 = 0x1 在我的 didMoveToView 中: //将场景的physicsBody设置为与屏幕接壤的物理体self.physicsBody = SKPhysicsBody(edgeLoopF​​rom ..
发布时间:2022-01-11 11:54:19 移动开发

Sprite Kit 断言失败:(typeA == b2_dynamicBody || typeB == b2_dynamicBody)

这是之前提出的,但原来的提问者不需要更改动态属性,所以他通过取消提问来回答自己的问题. 我在 iOS7 中使用 Sprite Kit,我希望能够在运行时更改 SKPhysicsBody 的动态属性.最初我在 touchesBegan: 方法中改变了它.Apple Dev 论坛中有人建议将更改移至 didSimulatePhysics: 方法,但这也无济于事. 此代码导致错误: -(v ..
发布时间:2022-01-11 11:54:03 其他开发

SpriteKit SKPhysicsBody bodyWithTexture 是颠倒的

您好,我正在尝试修复这个 spritekit 的物理形状倒置的错误. [SKPhysicsBody bodyWithTexture:monsterTexture size:monsterTexture.size] 怪物第一次出现时,物理身体方向是正确的.但是第二次和之后的每一次怪物出现时,它的物理身体都会沿着 Y 轴倒置.参见图片 skView.showsPhysics = true; 显示物 ..
发布时间:2022-01-11 11:48:17 移动开发

无法理解碰撞位掩码的工作原理

我正在尝试在 Swift 中使用碰撞位掩码和接触测试位掩码,我希望两个对象不要碰撞在一起,所以我这样做了: firstNode.physicsBody?.collisionBitMask = 0b01secondNode?.collisionBitMask = 0b10 由于 SpriteKit 对这两个数字进行 AND 操作,结果不应该是 00,因为 10 &01 = 00 ? 那么为 ..
发布时间:2022-01-11 11:47:56 移动开发

如何使物理体粘在节点锚点上

我的场景中间有四个正方形,分别设置了不同的锚点.轻按时,它们会一起移动并根据位置分开: func rotate(angle : CGFloat, animated : Bool) {var rotateAction:SKAction!如果动画{rotateAction = SKAction.rotateByAngle(角度,持续时间:0.6)}别的 {rotateAction = SKActi ..
发布时间:2022-01-11 11:42:29 移动开发

Physicsbody 不遵守节点的锚点

我的场景有一堆矩形,其物理实体与矩形大小相同.我喜欢将我的所有对象都锚定到 CGPointZero,但是我注意到当我这样做时,物理体仍然锚定在中间.换句话说,我的物理体的位置在视觉表示的左侧低 100 像素. 下面是一段简单的代码: SKSpriteNode* square = [SKSpriteNode spriteNodeWithColor:[SKColor blackColor] s ..
发布时间:2022-01-11 11:38:24 移动开发

applyForce(0, 400) - SpriteKit 不一致

所以我有一个物体,它有一个physicsBody 并且重力会影响它.它也是动态的. 目前,当用户触摸屏幕时,我运行代码: applyForce(0, 400) 物体向上移动大约 200 米,然后由于重力而落下.这只会在某些时候发生.其他时候,它会导致对象仅在 Y 方向移动 50ish 个单位. 我找不到模式...我将我的项目放在 Dropbox 上,这样如果有人愿意查看它就 ..
发布时间:2022-01-11 11:37:29 移动开发

iOS SpriteKit - 碰撞和联系人无法按预期工作

有时在我的 SpriteKit 程序中,我的碰撞和接触(使用 SKPhysicsBody)不会触发或按预期工作.我想我已经设置了我需要的一切,但我仍然没有得到正确的交互. 我是否可以编写一些代码来检查什么会与什么发生冲突,以及设置了哪些主体来生成联系人? 解决方案 为了帮助诊断这些类型的问题,我编写了一个可以从任何地方调用的函数,它将分析当前场景并生成一个节点列表与其他人发生碰撞以及 ..
发布时间:2022-01-11 11:35:30 其他开发