我有一堆積木(想想憤怒的小鳥),當一個彈丸擊中它們時,它們會像你期望的那樣墜落。SKPhysicsBody -bodyWithEdgeLoopFromRect爲什麼不對碰撞做出反應?
self.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize:self.size];
但是,如果我創建了物理體這樣的:不過,如果我創建像這樣的physicsBody這僅適用
CGRect r = CGRectMake(-self.size.width/2, -self.size.height/2, self.size.width, self.size.height);
self.physicsBody = [SKPhysicsBody bodyWithEdgeLoopFromRect:r];
然後碰撞是有的,但塊不受它影響。拋射物從它上面彈開,但不會導致塊體移動。我的categoryBitMask和collisionBitMask是正確的 - 它們與-bodyWithRectangleOfSize一起工作,但-bodyWithEdgeLoopFromRect沒有。
這是一個SpriteKit錯誤,或者我錯過了什麼?
感謝,
-Brian
某處還有解釋說明基於邊緣的物體不會與其他基於邊緣的物體產生接觸事件。如果不在參考文獻中,那麼在SK編程指南中。 – LearnCocos2D
@ LearnCocos2D https://developer.apple.com/documentation/spritekit/skphysicsbody - isDynamic屬性控制基於音量的主體是否受重力,摩擦力,與其他對象的碰撞影響... –