SKSpriteNode 不应受另一个 SKSpriteNode 影响
Posted
技术标签:
【中文标题】SKSpriteNode 不应受另一个 SKSpriteNode 影响【英文标题】:SKSpriteNode should not be affected by another SKSpriteNode 【发布时间】:2015-10-09 00:53:24 【问题描述】:我有一个桨和一个球 (SKSpriteNodes),它们都受重力影响。桨具有跳跃效果来击球。
我遇到的问题是当球拍击球时,它会吸收一些球的能量并反弹回来。桨需要不受球接触的影响,但仍受重力影响。
paddle.physicsBody!.affectedByGravity = true
paddle.physicsBody!.restitution = 0
ball.physicsBody!.affectedByGravity = true
ball.physicsBody!.restitution = 1.0
physicsWorld.gravity = CGVector(dx: 0, dy: -9.8)
编辑: 这是接触点。桨会跳到球的点,通常会受到重力的影响,但会受到球击中它的一点向下反弹的影响。
【问题讨论】:
给我们看球拍击球时的截图。 您是否尝试为桨的质量设置更大的值?如果不行,把能重现你问题的代码全部加进去,我看看。 这似乎可行,但球弹得太高了。我应该在接触时降低球的速度吗? 【参考方案1】:如果调整桨的质量似乎有效,但会产生一些副作用,您可能需要先减小球的restitution。降低球的速度也是一种解决方法。
【讨论】:
以上是关于SKSpriteNode 不应受另一个 SKSpriteNode 影响的主要内容,如果未能解决你的问题,请参考以下文章
AutoLayout:UIImageView 和 Aspect Fit 内容模式