본문 바로가기
유니티 공부/Unity

Unity - 3D GameObject를 버튼 처럼 사용하기

by 코딩하는 돼징 2023. 7. 7.
반응형

OnPointerClick과 OnMouseDown의 역할 차이

UI요소(버튼 등)의 클릭 이벤트 처리에는 OnPointerClick을 사용한다. OnMouseDown보다 복잡한 이벤트를 처리하고 사용자의 입력에 대한 응답에 특화되어 있다. 

UI요소가 아닌 경우(게임 오브젝트, 컨트롤러 등)에는 OnMouseDown을 사용한다. 보통 단순히 버튼이 눌렸을 때 실행되는 동작을 처리한다.

 

그러므로 GameObject를 버튼 처럼 사용하기 위해서 OnMouseDown을 사용할 것이다.


선택창과 관련된 코드 참조

 

Unity - 물체와 닿았을 때 선택창 띄우는 법

1. 선택창 UI만들기 2. 선택창 기능 구현을 위한 스크립트 작성하기 [SerializeField] TMP_Text promptText; // 선택창에서 표시될 내용 Action onYesSelected = null; // Yes를 선택했을 때 실행할 동작 01 텍스트 및 Yes

code-piggy.tistory.com


OnMouseDown과 관련코드

private void OnMouseDown()
{
    if (uiManager.Instance != null)
    {
        uiManager.Instance.CollisionYesNoPrompt("Do you want to change the color?", ChangeBedColor);
    }
}

물체와 닿았을 때 선택창을 띄우는 것과 코드는 크게 다르지 않지만 GameObject로 버튼 기능을 구현할 수 있다는 것을 알아보았다.


결과 영상

 

 

반응형

댓글