2024/03/04 3

[Unity] 버튼 눌리는 이벤트(Pointer Down, Pointer Up)

버튼을 누를 때 눌리고 있는 효과를 내 주기 위한 방법 1. Event Trigger 컴포넌트 활용하기 버튼 오브젝트에 Event Trigger 컴포넌트를 추가해주고, Add New Event Type으로 Pointer Down(눌렸을 때) Pointer Up(뗐을 때) 이벤트를 추가해서 스크립트 넣고 각각 이벤트 발생 시 실행할 함수를 지정해주면 된다 2. 스크립트로 추가하기 * 기존에 사용하던 이벤트 핸들러를 수정하여 사용했다 public class UI_PressEventHandler : MonoBehaviour, IPointerDownHandler, IPointerUpHandler { public Action OnDownHandler = null; public Action OnUpHandler =..

[C#] using static (정적 멤버 직접 사용)

일반적으로 C#에서 다른 클래스를 참조해 메소드 등을 사용할 때에는 클래스명.메소드 과 같이 작성해야 하지만 using static {클래스명}; 상단에 위와 같이 선언해주면 클래스명을 생략하고도 메소드나 변수 등을 사용할 수 있다 단, 혼란을 유발할 수 있기 때문에 해당 메소드나 변수가 명확하게 구별되면서 반복되는 부분에만 사용할 것

[Unity] 물리 충돌 시 떨림 현상

플레이어 캐릭터를 움직여서 다른 물체와 충돌할 경우 떨림 현상이 발생하기도 하는데 이를 해결하기 위해서는 몇 가지 방법이 있다 1. 물리와 관련된 이동은 FixedUpdate에서 진행 일반적으로 물리 이동을 포함한 것들을 Update 함수에서 진행할 텐데, 이를 FixedUpdate에서 진행하면 된다 스크립트 라이프사이클에서의 FixedUpdate와 Update의 위치 참고 2. transform(position, Translate)을 이용하지 않고 rigidbody의 velocity나 addforce를 이용해 이동시켜 주고, physics material을 새로 하나 만들어서 bounciness의 값을 0으로 설정하고 rigidbody의 meterial 자리에 붙여주면 된다