Iphone 如何找到sprite和bezier之间的碰撞检测
我通常使用box2d来检测两个精灵之间的碰撞,如下代码所示Iphone 如何找到sprite和bezier之间的碰撞检测,iphone,objective-c,cocos2d-iphone,collision-detection,box2d-iphone,Iphone,Objective C,Cocos2d Iphone,Collision Detection,Box2d Iphone,我通常使用box2d来检测两个精灵之间的碰撞,如下代码所示 - (void)beginContact:(b2Contact *)contact { b2Fixture *fixtureA = contact->GetFixtureA(); b2Fixture *fixtureB = contact->GetFixtureB(); b2Fixture *fixtureC = contact->GetFixtureA(); b2Body *bodyA = fixtureA-&g
- (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之间的碰撞检测。非常感谢您的帮助。谢谢
这是我的贝塞尔
LHBezierNode* myBezier = [LH bezierNodeWithUniqueName:@"BezierName"];
注意:我为贝塞尔使用了level helper。我通过向brezier添加标签解决了这个问题,谢谢