사각형과 원 간의 충돌 감지를 시도하고 있습니다. 나는이 방법을 함께했다 :사각형 및 원형 충돌 감지
-(BOOL) isCollidingRect:(CCSprite *) spriteOne WithSphere:(CCSprite *) spriteTwo {
float diff = ccpDistance(spriteOne.position, spriteTwo.position);
float obj1Radii = [spriteOne boundingBox].size.width/2;
float obj2Radii = [spriteTwo boundingBox].size.width/2;
if (diff < obj1Radii + obj2Radii) {
return YES;
} else {
return NO;
}
}
이 내가 그것을 확인하는 방법입니다
if ([self isCollidingRect:player WithSphere:blocker] == true) {
[self playerdeathstart];
}
이 사각형의 측면에서 제대로 작동하는 것 같다하지만 위 또는 아래로하지 않습니다. 상단과 하단에서 충돌이 너무 일찍 발생합니다.
내가 제대로 검색이 충돌을 얻을 수있는 방법이 있나요? 도와 줘서 고마워.
'BOOL'을 반환하는 경우 'YES'와 'NO'를 사용하십시오. 또한 그냥 비교 결과를 반환하고 if/else를 모두 피할 수 있습니다. –
감사! 내 질문에이 업데이 트되었습니다. –
'return (diff