작성
·
484
0
안녕하세요. 강의 잘 보고 있습니다.
마우스 이벤트 처리 관련해서 현업에선 어떤식으로 처리하는지 궁금해서 여쭤봅니다.
(web개발자라.. 게임개발은 생소하네요.)
먼저 구현하고 있는 게임은 2d mmo 게임입니다.
mmo 필수 마우스 이벤트들이 있을텐데요.. 가령
상대방 케릭 또는 몬스터 좌클릭(공격), 우클릭(스킬공격)
ui 상에서 아이템 클릭 후 타 케릭쪽으로 드롭하는 행위 등..
이벤트 처리시 자신의 케릭정보와 클릭?된 오브젝트간에 데이터를 가지고 공격로직같은걸 구현해야할 것으로 보입니다. 구글링해보니 gameobject 에 마우스이벤트 처리를 위해 onenter 와 같은 핸들러를 구현 할 수 있더라구요..
오브젝트 마다 하나하나 구현하자니 다른 방법이 있을거 같아 혹시 다른 방식이 있는지요?
(제가 생각해본건 마우스이벤트 처리 클래스 생성 후 오브젝트에 마우스 이벤트 핸들러에서 이벤트를 넘겨줄때 해당 오브젝트 정보를 넘겨 처리하면 되지않을까.. 라고 어렴풋 생각해봤습니다.)
현업에선 어떻게 처리하는지 궁금합니다.
답변 1
0
3D라면 레이저를 쏘는 Raycasting을 해서 픽킹을 통해 유닛을 선택하면 되구요.
(Part3 참고)
2D라면 방법이 여러가지 있는데 사실 애당초 Sprite, UI에 따라 조금 다릅니다.
이런 부분은 작업을 시작하기 전에
구글에 [unity 2d mouse click on object]를 검색해보시면 아주 많은 자료가 있습니다.
답변 감사합니다.
질문을 제대로 못썼나보네요 ㅠㅜ
유닛선택(이벤트발생 오브젝트) 부분은 이해를 했고 구현했습니다.
강의를 보면 각종 매니저를 만드시는거를 참고하여..
아래와 같이 아키텍처? 를 생각하고 있습니다.
예)공격
마우스 클릭 -> 해당 오브젝트 이벤트 핸들러 -> 마우스이벤트매니저(구현)에서 내정보 + 이벤트발생 오브젝트 정보 를 가지고 공격처리(데미지, 피격 처리 등)
내캐릭과 타 오브젝트간에 마우스로 인터렉션과 ui와 오브젝트간 인터렉션 부분이 많을거같아서 중간에 마우스이벤트매니저(개발)을 만들고자합니다.
이런 부분에 대해서 혹시 현업에서 처리하는 방식이 있는지요?