我得到了2個精靈。我使用邊界框來檢查與CGRectIntersectsRect的衝突。但它不起作用。 HBBall和HBpaddle有一個名爲image的CCSprite。cocos2d精靈碰撞檢測包圍盒
初始化:
ball = [[HBBall alloc] init];
ball.position = ccp(150, 50);
[self addChild:ball];
[update addObject:ball];
paddle1 = [[HBPaddle alloc] init];
paddle1.position = ccp(50, 160);
[self addChild:paddle1];
更新:
if (CGRectIntersectsRect([paddle1.image boundingBox], [ball.image boundingBox]))
CCLOG(@"ball hit paddle");
CGRectIntersectsRect retuns總是如此。有人有想法嗎?
是的,這是正確的做法。 +1 – tallen11 2011-04-30 13:49:18
一個小問題,但不是s.position.x和s.position.y指向精靈的中心?我想你應該使用: CGRect absoluteBox = CGRectMake([s boundingBox] .origin.x,[s boundingBox] .origin.y,[s boundingBox] .size.width ,[s boundingBox] .size.height); HTH – Ted 2012-02-24 11:25:17
取決於您的定位點。 – renevdkooi 2012-04-05 05:50:36