<요약>
이슈: 부모 객체의 스케일 변경이 자식 객체의 위치에 영향을 줄 수 있음
해결 방법: 상위 부모를 따로 만들고 관련된 자식들을 따로 빼거나, 아예 자식에서 빼서 작업하거나 알아서 생각해서 하기
- 트랜스폼 계층 구조
자식 객체는 부모 객체의 로컬 좌표계를 기준으로 자신의 트랜스폼을 계산하도록 함
- 로컬 좌표계와 월드 좌표계
- 로컬 좌표계: 자식 객체는 부모 객체의 좌표계를 기준으로 자신의 위치, 회전, 스케일을 정의
- 월드 좌표계: 최종적으로 렌더링되는 위치는 로컬 좌표계를 통해 월드 좌표계로 변환됨
- 부모 객체의 스케일이 변경되면, 자식 객체의 로컬 좌표도 그에 따라 변환됨
- 스케일 변환의 영향
부모 객체의 스케일이 변경되면, 자식 객체의 위치는 부모 객체의 스케일을 곱한 값으로 변환됨
ex.
- 원래 부모 객체의 스케일이 (1, 1, 1), 자식 객체의 로컬 위치가 (10, 0, 0)일 때:
- 자식 객체의 월드 위치는 (10, 0, 0)이 됩니다.
- **부모 객체의 스케일이 (2, 1, 1)**로 변경되면:
- 자식 객체의 로컬 위치는 여전히 (10, 0, 0)입니다.
- 하지만 월드 좌표계에서의 위치는 부모 스케일을 곱하여 계산되므로, (2 * 10, 1 * 0, 1 * 0) = (20, 0, 0)이 됩니다.
이 예제에서 보듯이, 부모 객체의 스케일 변경이 자식 객체의 최종 위치에 직접적인 영향을 미칩니다.
- 요약
부모 객체의 스케일 변경이 자식 객체의 위치에 영향을 미치는 이유는 자식 객체의 위치가 부모 객체의 로컬 좌표계를 기준으로 정의되기 때문
부모 객체의 스케일이 변경되면, 이 로컬 좌표계가 변경되면서 자식 객체의 위치가 변환된 좌표계에 맞게 재계산됨
'Unreal' 카테고리의 다른 글
Event Dispatcher은 꼭 써야 할 때 쓰자(Delegate) (0) | 2024.08.20 |
---|---|
[Unreal] Multiplayer Game Study (0) | 2024.07.04 |
[Unreal] Custom Event vs Create Event (0) | 2024.06.05 |
[Unreal] Material Function, Material Parameter Collection (0) | 2024.05.24 |
[Unreal] Player Controller vs Pawn (0) | 2024.04.12 |
댓글