1. 로컬 좌표계란?
Unity에서 로컬 좌표계는 씬 내의 특정 게임 오브젝트를 기준으로 하는 좌표계를 의미합니다. Unity의 각 게임 오브젝트에는 부모 게임 오브젝트 또는 월드 원점을 기준으로 위치, 회전, 배율을 정의하는 고유한 로컬 좌표계가 있습니다. 로컬 좌표계는 오브젝트의 이동과 회전을 계산하는 데도 사용됩니다.
2. 로컬 좌표계의 특징
위치: 로컬 좌표계에서 게임 오브젝트의 위치는 부모 게임 오브젝트 또는 월드 원점을 기준으로 한 게임 오브젝트의 위치를 나타냅니다. 위치는 세 가지 값을 사용하여 정의됩니다: X, Y, Z 좌표입니다.
회전: 로컬 좌표계에서 게임 오브젝트의 회전은 부모 게임 오브젝트 또는 월드에 대한 게임 오브젝트의 방향을 결정합니다. 회전은 오일러 각도(X, Y, Z 축을 중심으로 회전을 나타내는 세 가지 값) 또는 쿼터니언(회전을 수학적으로 표현한 것)으로 표현할 수 있습니다.
스케일: 로컬 좌표계에서 게임 오브젝트의 스케일은 부모 게임 오브젝트 또는 월드에 대한 상대적인 크기를 결정합니다. 스케일은 세 가지 값을 사용하여 정의됩니다: X, Y, Z 스케일 인자입니다. 배율은 게임 오브젝트와 그 자식 게임 오브젝트의 크기에는 영향을 미치지만 위치나 회전에는 영향을 미치지 않습니다.
부모-자식 계층 구조: Unity의 게임 오브젝트는 부모-자식 관계를 설정하여 계층 구조로 구성할 수 있습니다. 게임 오브젝트가 다른 게임 오브젝트의 자식으로 설정되면 해당 게임 오브젝트의 로컬 좌표계는 부모의 좌표계에 상대적인 좌표계가 됩니다. 이를 통해 자식 게임 오브젝트가 부모의 위치, 회전 및 배율을 상속하는 계층적 변환이 가능합니다.
트랜스폼 순서: Unity에서 트랜스폼(이동, 회전, 크기 조정)은 TRS 순서라고 하는 특정 순서로 적용됩니다. 순서는 다음과 같습니다: 스케일, 회전, 마지막으로 변환 순입니다. 이 순서에 따라 변환이 결합되는 방식이 결정되며 로컬 좌표계에서 게임 오브젝트의 최종 위치, 회전 및 배율에 영향을 줍니다.
로컬에서 월드로의 변환: Unity는 로컬 좌표를 월드 좌표로 변환하는 함수와 프로퍼티를 제공합니다. 로컬에서 월드로의 변환은 게임 오브젝트와 그 부모 게임 오브젝트의 로컬 변환을 고려하여 게임 오브젝트의 글로벌 위치, 회전, 스케일을 생성합니다.
3. 로컬 좌표계의 장점
1. 이해하고 사용하기 쉽습니다.
2. 계산이 필요하지 않으므로 효율적입니다.
3. Unity를 처음 사용하는 경우 로컬 좌표계를 바로 사용할 필요가 없을 수도 있습니다. 하지만 엔진에 익숙해지면 로컬 좌표계가 매우 유용한 툴이 될 수 있음을 알게 될 것입니다.
4. 결론
로컬 좌표계를 이해하고 작업하는 것은 Unity 게임 개발에서 필수적입니다. 이를 통해 씬 내에서 게임 오브젝트의 위치, 회전, 스케일을 독립적으로 계층적으로 조정할 수 있습니다. 게임 오브젝트의 로컬 좌표를 조작하여 복잡한 씬, 애니메이션, 인터랙션을 만들 수 있습니다.
'개발 > 유니티' 카테고리의 다른 글
유니티 스프라이트 아틀라스란? (0) | 2023.06.12 |
---|---|
월드 좌표계란? (0) | 2023.06.10 |
유니티 최적화 10가지 기법 (0) | 2023.03.19 |
라이트 맵(Light Map)이란? (0) | 2023.03.17 |
드로우콜(DrawCall)이란? (1) | 2023.03.13 |