좌표 값이 Transform의 position에 기록되어 있으니까, 그냥 그 값을 변경하려고 했는데, 변경할 수 없는 값이라고 에러가 나네요.
그래서 position을 통째로 바꿔야 하는 건가 해서 new Position 했는데 그런 클래스가 없네? 이상하다 싶어 검색을 해봤더니..., posision은 그냥 Vector3...으허허허. 처음부터 타입을 확인했으면 알 수 있는 걸...
여튼 삽질을 해서 기록해 둡니다.
좌표 이동
절대좌표
Transform 컴포넌트의 position 값을 변경한다. 여기서 주의할 점은 position은 Vector3이며 좌표를 변경하려면 새로운 Vector3로 아예 변경해야 한다. (postion의 x,y,z 값을 직접 변경하려고 해도 변경할 수 없다.)
예)
target.transform.position = new Vector(0, 0, 0); // 위치를 0으로 초기화시킨다. |
상대 좌표
translate 함수를 이용한다.
예)
target.transform.translate(new Vector(1, 1, 1)); // 현재 위치를 기준으로 x, y, z 좌표가 1씩 이동한다. |
※참고 : [유니티 3D] 오브젝트 이동 및 회전하기 (월드좌표와 상대좌표) ( http://blog.jsmobile.co.kr/18 )










덧글