【发布时间】:2021-05-26 17:36:46
【问题描述】:
早安,
如何通过 allContactedBodies 获取两个 Physicsbody 之间的接触位置?
由于我的应用程序的结构,我不能使用 Physicsbody 中的 touchesBegan 方法,但必须通过 Spritekit 中的 allContactedBodies() 手动检查它。但是有没有一种方法可以同时获得触摸发生的点?
这是我检查联系人的方式,但现在我还需要联系人的位置
if let unwrapped_allContactedBodies = spriteObject.spriteNode.physicsBody?.allContactedBodies() {
if spriteObject.spriteNode.physicsBody?.allContactedBodies().count ?? 0 > 0 {
return checkForContact(contactedBodies: unwrapped_allContactedBodies, parameter: value)
} else {
return 0.0
}
} else {
return 0.0
} ´´´
Any Ideas?
【问题讨论】:
-
print(spriteNode.position) 会给你你联系的节点的CGPoint。
-
当然,但我需要联系开始的时间点
-
您应该实现 SKPhysicsContactDelegate。请查看发布的答案
标签: swift xcode sprite-kit skspritenode skphysicsbody