unity [Unity, C#] Collision, Trigger 일어나는 조건 유니티에서 Collision(콜리전, 충돌)과 Trigger(트리거)는 물리적 충돌 처리와 관련된 두 가지 주요 이벤트 타입이다. 각각의 특징과 사용 방법은 다음과 같다. 1. Collision (충돌) 1. 두 개의 collider(콜라이더)가 서로 물리적으로 충돌하는 상태를 의미한다. 2. 충돌 이벤트가 발생할 때, 물리적 힘이 작용하고 물체들은 서로 밀려난다. 3. 적과
unity [Unity, C#] 제일 가까운 아이템 줍기 유니티에서 아이템 줍기 기능을 구현하려면, 1) 플레이어가 아이템을 인식할 조건을 추가하고 2) 해당 조건을 만족할 때 아이템을 줍는 기능을 구현하면 된다. 1. 플레이어의 자식으로 빈 GameObject를 추가한다. 2. 추가한 GameObject의 컴포넌트로 Circle Collider(콜라이더)를 추가해준다. 해당 Collider의 Is Trigger를 체크해준다. 3. 추가한 GameObject의 컴포넌트로 스크립트를 추가해준다. (OnTriggerEnter) 💡 Trigger? GameObject끼리
unity [Unity, C#] Raycast를 사용해 벽 통과 방지하기 유니티로 게임 개발을 하다 보면, 플레이어와 벽에 모두 collider(콜라이더)를 넣었음에도 불구하고 플레이어를 벽으로 계속 돌진시키면 플레이어가 벽을 통과하는 현상이 발생한다. 이는 Transform.Translate가 이동 전 위치와 이동 후 위치만을 고려하고, 그 사이에 collider가 있는지는 고려하지 않기 때문이다. 아래 그림처럼 A가 플레이어의 이동 전 위치, B가 플레이어의 이동 후
unity [Unity, C#] 몹을 랜덤한 경로로 순찰(patrol)시키기 토이 프로젝트로 좀비 TPS 게임을 만들고 있다. 순찰(patrol)이란 몹이 일정한 지점들을 돌아다니는 것을 이야기한다. 좀비 게임을 생각해보면, 좀비가 가만히 있기만(idle) 하면 난이도가 너무 쉬울 것이다. 좀비가 idle/patrol 상태에 있다가 플레이어를 발견하면 추적(chase) 모드로 전환되어 플레이어를 쫓아간다. 이때 빠르게 도망가지 못하고 좀비와의 거리가 일정 값 이하가
c# [C#] Delegate, Func, Action 이해하기: 차이점 및 사용 사례 C#의 Delegate, Func, Action은 C/C++의 함수 포인터와 비슷한 개념으로, 이벤트 처리 및 비동기 프로세스 처리 등을 위해 유연하고 재사용 가능한 코드를 작성하는 데 필수적인 요소다. 본 포스팅에서는 Delegate, Func, Action 각각의 개념, 차이점, 사용 사례에 대해 설명한다. 1. Delegate Delegate는 특정 메서드 시그니처(입력 매개변수와 반환 타입)