안녕하세요 모두가 여기에 :) 상황이다 : 나는 두 개의 입자 가속기의 구성 요소가 이는 baddy 블 조립식이조립식 Collider2D 레이 캐스트 충돌 장치로 인식되지
: 물리학에 사용되는 간단한 CapsuleCollider2D 및 트리거는 마우스 포인트 충돌에만 사용 PolygonCollider2D .
PolygonCollider2D은 첨부 된 스크립트를 사용하여 필요한 경우에만 (Baddy.cs)를 통해 업데이트됩니다
if(this.gameObject.GetComponent<PolygonCollider2D>()!=null){
Destroy(this.gameObject.GetComponent<PolygonCollider2D>());
}
this.gameObject.AddComponent<PolygonCollider2D>();
this.gameObject.GetComponent<PolygonCollider2D>().isTrigger=true;
예,이 가난한 연습이지만, 작업이 이루어집니다 얻을. 그것은 완벽하게 작동합니다 : 게임의 장면보기에서 나는 멈출 수 있고 참으로 우리 badiff 조립식에 polygon collider가 있음을 볼 수 있습니다. 또 다른 연결 스크립트 (CollisionHandler.cs) 우리는 우리의 baddy 블에 마우스를 눌러 확인에서
는 :
if(MousePress()){
hit=Physics2D.Raycast(level.mousePoint, Vector2.zero, 0f);
if(hit&&hit.collider==this.gameObject.GetComponent<PolygonCollider2D>()){
print("baddy mousePress");
}
}
그러나 hit.collider==this.gameObject.GetComponent<PolygonCollider2D>()
는 거짓 판명 나는 즉시 손 전에 두 hit.collider
및 this.gameObject.GetComponent<PolygonCollider2D>()
를 인쇄 할 수에도 불구하고 우리의 if(MousePress())
그들 모두는 다음과 같이 정의 : 한 번에 하나있을 수 있기 때문에 우리 baddy 블 스크립트 remov 때문에,
D_Prefab(Clone) (UnityEngine.PolygonCollider2D)
그들은 수 없습니다 다른 PolygonColliders 동시에 PolygonCollider를 생성합니다.
어떤 아이디어가 잘못 될 수 있습니까?