Unity2D
Unity) [유니티 2D] Physics2D.IgnoreLayerCollision 기능을 사용하여 자연스러운 넉백 효과 만들기
HSH12345
2023. 4. 15. 16:50
private IEnumerator KnockbackRoutine()
{
this.isKnockBack = true;
Physics2D.IgnoreLayerCollision(8, 8, true);
this.stun = 0;
this.anim.SetInteger("State", 2);
yield return new WaitForSeconds(0.15f);
this.isKnockBack = false;
Physics2D.IgnoreLayerCollision(8, 8, false);
this.rBody2D.velocity = Vector2.zero;
this.stun = 1;
}
Physics2D.IgnoreLayerCollision 기능을 사용하여 넉백되는 동안 같은 레이어 끼리는 충돌을 하지 않도록 지정할 수 있다. 현재 문제는, 몬스터의 피격 후 코루틴이 정상적으로 작동하지 않아 isKnockBack이 false가 되지 않는 경우가 종종 발생하는데 원인을 찾아서 해결해야한다.