2012-12-06 5 views
0

안녕하세요, 저는 실제적인 사격장에서와 같이 당신 앞에 표적이있는 풍경과 표적을 가진 사수의 일종 인 cocos2d 게임을하고 있습니다. 총알 충격의 경우 화면의 특정 지점에서 충격을주는 입자 효과를 사용하고 대상에 충격이 가해지면 간단한 애니메이션을 실행하고 바닥에 떨어집니다. 내 게임은 직사각형 타겟과 완벽하게 작동하지만 실제 몸 모양도 사용하고 싶습니다. 그래서 입자가 몸에 충격을 주면 떨어집니다. 그리고 입자가 다리 사이 또는 어깨와 머리 사이의 충돌에 실패 할 때 윤곽 추적 된 스프라이트를 사용하고 싶습니다. 이 코드를 사용하여 입자가 정상적인 직사각형 타겟에 대해 타겟에 영향을주는시기를 감지합니다.Cocos2d 불규칙한 형태의 스프 라이트

// Sustem은 내 입자입니다 (글 머리 기호) CGRect projectileRect = [enemy boundingBox];

if (CGRectContainsPoint(projectileRect, system.position)) { 
    [enemy runAction:_walkAction];} 

나는 입자는 추적 점의 몇 가지 사이에있을 때 내가

답변

1

내가 당신의 고통을 느낄 일부 조치를 실행 충돌 감지를하지 않으려는, vertexHelper 물리학 편집기 및 기타 도구를하지만 성공을 사용하여 시도 . 비 정사각형 충돌을 감지하는 간단한 방법은 없습니다. PhysicsEditor를 사용하고 Ray의 튜토리얼 ( how to use box2d for just collision detection)을 따르십시오. 나는 비 정사 스프라이트를 사용할 수 있도록 물리 엔진을 구현하는 아이디어를 싫어했다. 베 지어 곡선과 같은 다른 방법이 있습니다. 그러나 귀하의 경우 (목표물 촬영)에는 얻을 수있는 정확도가 필요합니다. PhysicsEditor와 box2d/chipmunk가이를 제공 할 것입니다.

관련 문제