Contents
접기
728x90
이번 글에서는 Unity에서 자주 헷갈리는 로컬(Local) 좌표와 월드(World) 좌표의 차이, 그리고 localPosition과 position의 차이점에 대해 정리하였다.
📌 로컬좌표 (Local Coordinate)
- 부모 오브젝트를 기준으로 한 상대적인 위치
- 오브젝트가 부모 안에서 얼마만큼 떨어져 있는지를 나타낸다.
- 부모 오브젝트의 위치나 회전이 바뀌어도, 자식 오브젝트는 상대적 위치를 유지한다.
📌 월드좌표 (World Coordinate)
- Unity 전체 씬의 전역 좌표계를 기준으로 위치를 나타낸다
- (0, 0, 0) 은 Unity 씬의 중심점(Origin)이다.
- 부모 오브젝트와 관계없이, 절대적인 위치를 가리킨다.
📚 로컬포지션(localPosition)과 포지션(position)
Unity에서 Transform 컴포넌트에는 두 가지 위치 속성이 있다.
구분 | 설명 |
localPosition | 부모 오브젝트 기준 상대 좌표(로컬좌표) |
position | 씬의 절대 좌표 (월드 좌표 기준) |
📝 [로컬포지션] 예시
topObject.localPosition = new Vector3(0, halfHoleSize, 0); // holeSize의 반만큼 위로 이동
bottomObject.localPosition = new Vector3(0, -halfHoleSize, 0); // holeSize의 반만큼 아래로 이동
설명
topObject와 bottomObject는 obstacle 오브젝트의 자식이다.
장애물(obstacle)이 이동할 때, 내부의 top과 bottom 오브젝트는 부모 내에서만 이동해야 한다.
만약 position을 사용하면, 매번 월드 원점(0,0,0)을 기준으로 이동하게 되어 모든 장애물이 같은 위치에 등장하는 문제가 발생한다.
📝 [포지션] 예시
transform.position = placePosition;
설명:
placePosition은 씬 전체(World) 기준의 절대 위치이다.
Obstacle 오브젝트 자체의 이동은 월드좌표를 기준으로 설정해야 씬 상에서 적절한 위치에 배치할 수 있다.
요약
구분 | 기준 | 특징 |
로컬좌표 | 부모 오브젝트 기준 | 부모 이동/회전 시 상대 위치 유지 |
월드좌표 | 씬 전역 기준 (0,0,0) | 절대 위치, 부모와 무관 |
속성 | 기준 | 설명 |
localPosition | 부모 오브젝트 기준 위치 | 자식 오브젝트 이동 시 사용 |
position | 씬(월드) 기준 위치 | 오브젝트 자체 이동 시 사용 |
728x90
'GameDevelop > Unity기초쌓기' 카테고리의 다른 글
[Unity-2025.05.02] Lerp (0) | 2025.05.02 |
---|---|
Unity 싱글톤(Singleton) 패턴 (0) | 2025.05.01 |
[Unity] 화면밖 네모들 Destroy (0) | 2025.04.06 |
[Unity] 풍선 터지는 애니메이션 추가 (0) | 2025.04.06 |
[Unity] 최고점수구현 - 데이터보관 PlayerPrefs (0) | 2025.04.06 |