Unity2D에서 Y축에 따른 레이어 자동 조절 2D 탑다운 게임등을 개발할때에 캐릭터의 Y축좌표에 따라서 레이어가 자연스럽게 바뀌어야 할때가 있다. 원래는 코드를 이용해서 Y축의 좌표에 따라서 레이어를 바꿔주는 수고를 했지만 Edit > Project Setting > Graphics Transparency Sort Mode를 Custom Axis로 변경뒤 0,1,0을 적용시켜주면 별다른 스크립트 없이 레이어가 자연스럽게 변화한다. Unity 2025.01.31
OnTriggerStay 작동 안할때 - Unity Rigidbody Sleep Mode 개발과정에서 OnTriggerStay2D 를 이용해 일정시간 간격으로 데미지를 주는 로직을 개발하였다. 그런데 분명 Collider의 범위안에 있음에도 처음 몇초간은 함수가 작동하다가 일정 시간이 지나면 OnTriggerStay2D함수가 작동하지 않는 문제가 발생했다. 그런데 RigidBody2D 는 일정시간 움직임이 없을시 sleep 모드에 들어가고 그에 따라 감지가 되지 않았던 것이다 . Edit > ProjectSetting > Physics2D Never Sleep : sleep 모드에 들어가지 않지만 CPU 사용량이 증가해서 꼭 필요할 때만 사용한다.Start Awake : 처음 시작할때 오브젝트를 sleep에서 깨운다.Start Alssep : 잠들어 있던 오브젝트를 충돌이 일어나면 깨운다.. Unity 2025.01.31
유닛 투사체가 겹쳐있는 적 몬스터 동시 타격하는 문제 방치형 게임에서 아군 유닛이 적 몬스터에게 투사체를 발사하는 로직을 개발했었습니다. 저의 개발 의도는 단일 대상 타격이었지만 유닛들이 절묘하게 겹쳐있으면 겹쳐있는 유닛들에게 다중으로 타격이 들어가는 문제가 있었습니다. sol1. OntriggerEnter2D 들어오면 isHit 변수 true 로 만들어주고 isHit 변수가 true 이면 return 시킴public void OnTriggetEndter2D(Collider2D other) { if(isHit) return; isHit=ture; }문제 : 몬스터들이 절묘하게 겹쳐있으면 뚫려버리고 겹친 몬스터들 다 때림 sol2. 타겟으로 설정한 몬스터의 이름이랑 비교 (※ 몬스터들 이름이 다 달라야함 ) public void OnTrig.. Unity 2025.01.31