Unity 4

[Unity] New Input System 프로젝트 적용

Unity에서는 Legacy Input 과 New Input, 2개의 Input System이 존재한다. Legacy Input System은 Unity 4 시절부터 사용하던 시스템으로 흔히 많이 알고 있는 아래와 같은 코드가 Legacy Input System이다. if(Input.GetKey(KeyCode.Space)){ //Space를 눌렀을 경우}flaot h = Input.GetAxis("Horizontal");flaot v = Input.GetAxis("Vertical");//이동 로직 ... Unity를 처음 접하는 사람한테는 위와 같은 Legacy Input System이 뭔가 직관적이고, 인터넷에 검색해도 위와 같은 코드들만 수두룩하게 나오기 때문에 더 단순하고 편리하다고 많이 생각한다...

Unity/Input 2024.10.09

[Unity] 편리한 단축키

유니티에는 단축키들이 많이 있는데 그 중에서 기본적인 단축키를 제외한,  알면 편리한 단축키들 위주로 정리해보았다. Alt + Mouse Click유니티에서 많은 계층 구조를 열때 하나 하나 열면서 확인할 때가 있는데 Alt Key를 누른 상태에서 클릭을 하면 모든 하위 객체가 한번에 열린다. Ctrl + Shift + N빈 오브젝트를 한번에 생성할 수 있다.자식 오브젝트로 생성하고 싶다면 부모 오브젝트를 클릭 후 단축키를 입력하면 된다. Ctrl + Shift + FScene View에서 보고 있는 화면 위치로 오브젝트를 이동 및 회전 시킬 수 있다.카메라를 현재 Scene에서 바라보는 화면으로 바꾸고 싶을 때 유용하다. Shift + Space bar원하는 창에 마우스를 올려두고 Shift + Spa..

[Unity] Enum을 다중 선택할 수 있는 Flags 속성

Enum Flags를 처음 사용할 때 많이 헷갈리고 복잡하게 느껴졌던 경험이 있어 언제 어떻게 사용하면 편리한지 간단하게 글로 정리해보려 한다.먼저 Unity에서 그냥 Enum을 통해 Player State를 설정하는 예를 들어보자.사용자 캐릭터의 상태를 나타낼 수 있게 다음과 같이 Enum을 정의한다.public enum PlayerState{ None, //기본 Bleeding, //출혈 Poison, //중독 Burn, //화상 Stun, //기절 Paralysis, //마비 Slow, //느려짐 Fear //공포};그리고 Player의 상태를 알 수 있는 CurrentPla..

Unity/Scripting 2024.08.25

[Unity] OnTriggerExit 불리지 않는 경우

일단 당연하게도 Collider나 IsTrigger 활성화 여부는 확인하였을 것으로 판단하여 따로 언급하지는 않겠다.코드를 작성하던 중 OnTriggerExit가 불리지 않는 경우가 자꾸 발생하여 찾아본 결과 OnTriggerExit은 아래와 같은 경우 불리지 않는다는 것을 알게되었다.  1. Unity에서 OnTriggerExit은 오브젝트가 비활성화된 상태에서는 호출되지 않는다. 2. 오브젝트가 Collider에 닿아있는 상태에서 Destroy되어도 OnTriggerExit는 불리지 않는다.  기존에 Unity가 기반으로 하던 Physix가 오브젝트가 비활성화 되어있으면 OnTriggerExit가 불리지 않았고, 이걸 고치려고 하니 다른 기존 프로젝트들한테서 사이드 이펙트가 발생할 것으로 예상되어 바..

Unity/Physics 2024.08.21