我通常使用box2d在两个精灵之间进行碰撞检测,如下面的代码
- (void)beginContact:(b2Contact *)contact {
b2Fixture *fixtureA = contact->GetFixtureA();
b2Fixture *fixtureB = contact->GetFixtureB();
b2Fixture *fixtureC = contact->GetFixtureA();
b2Body *bodyA = fixtureA->GetBody();
b2Body *bodyB = fixtureB->GetBody();
b2Body *bodyC = fixtureC->GetBody();
CCSprite *spriteA = (CCSprite *) bodyA->GetUserData();
CCSprite *spriteB = (CCSprite *) bodyB->GetUserData()
LHBezierNode* bez = (LHBezierNode *) bodyC->GetUserData();
if ((spriteB == _enemy && spriteB == _hero) ||
(spriteA == _enemy && spriteA == _hero)) {
NSLog(@"enemy touched");
}
}
但我很困惑如何检测bazier和sprite之间的碰撞检测。非常感谢。谢谢
这是我的bezier
LHBezierNode* myBezier = [LH bezierNodeWithUniqueName:@"BezierName"];
注意:我使用级别助手为bezier。
答案 0 :(得分:0)
我通过向brezier添加标签解决了这个问题,谢谢