是否可以将两个(或更多)SKPhysicsBodys 添加到一个 SKNode?与此类似的内容: PhysicsEditor 中的示例 因为角色的头部应该与球相撞,所以顶部应该是圆形的。此外,球不得穿过球员。你知道如何做到这一点吗?
问问题
2928 次
3 回答
6
正如上面的physicsBody
属性SKNode
所暗示的,节点和物理实体之间存在一对一的关系。
但是,这并不意味着您必须为每个可见的 sprite 设置一个基本形状。您可以采取几种方法来完成您正在寻找的内容:
- 顶部真的需要倒圆吗?您可以用矩形覆盖大部分猴子艺术。(我想你想要一个圆形的顶部,所以碰撞会在不同的方向反弹,不过。)
- 使用多边形后创建“圆端矩形”形状。您必须选择多个边来逼近适合您的应用程序的曲线:太多,它会减慢物理模拟,太少,当其他物体反弹时它不会表现得像一个圆圈。
- 每个身体都需要一个节点,但不是每个节点都需要一个可见的精灵。你可以用两个节点制作你的猴子:一个拥有艺术并附加了方形或圆形物理体,另一个节点具有另一个物理体,通过固定关节连接,但没有艺术。
于 2013-09-24T23:15:18.607 回答
3
这是这个问题在谷歌上的热门话题,所以我想我会更新答案。这是可能的(虽然可能不是在 2013 年),根据 Mike S 在这篇文章中的回答。
你需要使用
// Swift
SKPhysicsBody(bodies: <#[AnyObject]#>)
// Obj-c
[SKPhysicsBody bodyWithBodies:(NSArray *)bodies]
因此,您创建一个具有其他主体的主体,并将该主体添加到您的SKnode
.
于 2015-04-27T10:48:26.647 回答