Spritekit:将角冲量应用于爆炸节点的所有周围节点

问题描述 投票:0回答:1

我正在用spritekit开发一个简单的游戏,其中屏幕上充满了带有物理物体的球。当玩家轻击球时,球会爆炸。我想在接触点施加一个角度脉冲,这将像现实世界中的爆炸一样将所有周围的球推开。我尝试了场,但它们并不是很好,因为所有物理场节点都是力而不是脉冲。我检查了所有的脉冲方法,但它们仅是对节点本身施加力。我也尝试过:

self.physicsBody?.applyAngularImpulse(100)

self.physicsBody?.applyImpulse(impulse: CGVector, at: CGPoint)

认为它将脉冲应用于场景中的所有子节点(所有球都是场景的子节点,但没有效果。

我以为这很简单,但我没主意。

感谢您的时间。欢呼声

ios swift sprite-kit game-physics skphysicsbody
1个回答
0
投票

这种方法不是现实世界中的爆炸模拟,但是可以帮助您实现一个想法。

enter image description here

我正在每个被触摸的节点上执行类似的操作:

node.run(SKAction.sequence([
    SKAction.fadeOut(withDuration: 0.0),
    SKAction.scale(to: 10, duration: 0.1),
    SKAction.removeFromParent()
]))

您可以在此处获得此示例:https://github.com/Maetschl/SpriteKitExamples/blob/master/BoxWithBalls/BoxWithBalls/GameScene.swift

© www.soinside.com 2019 - 2024. All rights reserved.