1
Unity에서 2D 게임의 트리거에 문제가 있습니다. 플레이어의 무기로 트리거 할 때 적을 죽이고 싶습니다. 문제는 적군에 부착 된 두 개의 colliders가있다 ("적"태그) :Unity OnTriggerEnter2D 가끔 작동하지 않습니다.
- 하나는 정상 입자 가속기로 사용 Box2D의 입자 가속기는
- 초가 트리거로 설정하고 스크립트에 사용되는 구형 입자 가속기이다 범위의 플레이어가 있는지 확인
내가 가지고 스프라이트 렌더링, 상자 입자 가속기 (트리거로 설정) 및 스크립트가 칼 객체 :
void OnTriggerEnter2D(Collider2D other)
{
if(other.tag == "Enemy")
{
if(!other.isTrigger)
{
Debug.Log ("enemy");
Destroy (other.gameObject);
}
}
}
Scre을 장면의 enshot : 적 게임 오브젝트의 http://i.stack.imgur.com/eVtRX.jpg
스크린 샷 : http://i.stack.imgur.com/9R5a6.jpg
그래서 일반적으로 가끔 작동하지만, 때로는하지 않습니다. 적에서 스페어 콜리더를 사용하지 않도록 설정하면 모든 것이 잘 작동하지만 범위 내에 플레이어가 있는지를 확인해야합니다. 어떻게 해결할 수 있습니까?
'변형'으로 무기를 움직이고 있습니까? 'Transform'은'GameObject'를 즉시 움직이고 충돌에는 영향을 미치지 않습니다. –
애니메이션을 사용하여 이동합니다 (플레이어의 손을 회전시킵니다). 나는 그것이 움직이는 것과는 아무런 관련이 없다고 생각하지만 적에게 붙은 두 명의 충돌자를 가지고 있습니다. – Przemotar