728x90
반응형
Input.GetMouseButtonUp(0) 활용하여 클릭 받구
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
를 활용해 거리(?)를 잰다 -> 마우스가 있는 좌표 값을 얻어서 플레이어 캐릭터에게 넣어주기 위해 활용.
추가로 게임 개발하면서
'노드'를 클릭해서 플레이어 좌표가 움직이게끔 하기로 해서.
Go라는 태그를 만들어 오브젝트에 넣고 해당 오브젝트를 불투명하게 만들어 노드를 클릭하면 해당 위치로 플레이어 캐릭터가 가게끔 구성했다.
float clampedX = Mathf.Clamp(hit.point.x, -7f, 200f);
float clampedZ = Mathf.Clamp(hit.point.z, 0f, 100f);
요거는 초기에 노드 기반이 아닐 때, 마우스 이동에 대한 예외처리(?) (지역구분) 해논 게 남아있는 것.
한 번에 딱! 플레이어가 해당 위치로 텔레포트하는 게 아닌,
서서시 이동하게끔 구현.
move라는 bool 변수는 움직임을 표시하기 위한 거고 이를 이용해 유니티 내에서 애니메이션 (모션)을 변경하기 위함.
smoothTime이나 관련 벡터 등은 카메라도 서서히 움직이게끔 하기 위해 했었는데,
지금보면 그리 필요하지 않는 듯.
일반적으로 플레이어의 좌표값을 얻은 후, 상한/하한 값 지정하고
카메라 좌표를 변경함!
Mathf.Clamp
이걸 요즘 애용하는 듯.
728x90
반응형
'공부 > Unity Engine' 카테고리의 다른 글
[Unity AR] AR 이미지 트래킹 성공 유무 확인하기 (bool 변수로 받거나 T/F)(메모) (0) | 2023.07.18 |
---|---|
[Unity] AR 구현 연습 (AR 설정, IMG 트래킹) + 갤럭시 S21 오류 해결 (0) | 2023.06.27 |
[Unity] 유니티에 이미지 넣기, 영상 넣기, 캔버스 크기 조절 (Canvas, Raw Image, Video Player) (0) | 2023.03.16 |
[Unity] 유니티 terrain 지형 기능 정리 (높이, 부드럽게, 텍스처, 고도 등) (0) | 2023.03.08 |
아두이노와 유니티 연동하기 (메모) (0) | 2023.02.26 |