배운 내용
- Transform 속성 이해하기
- Actor는 언리얼 엔진에서 모든 게임 오브젝트를 의미하며, 위치(Location), 회전(Rotation), 크기(Scale)라는 세 가지 주요 속성을 포함함.
- 이 세 속성을 Transform이라 부르며, 이를 통해 월드와 로컬 좌표계를 기준으로 오브젝트를 조작할 수 있음.
- FTransform 자료형을 활용하면 Transform 데이터를 효율적으로 관리 가능.
- C++로 Transform 다루기
- BeginPlay() 함수에서 액터의 초기 위치, 회전, 크기를 설정 가능.
- Transform 변경 함수:
SetActorLocation(): 위치 이동.
SetActorRotation(): 회전 설정.
SetActorScale3D(): 크기 변경.
SetActorTransform()으로 위치, 회전, 크기를 한 번에 조정 가능.
- Tick 함수와 프레임 독립 로직
- Tick() 함수는 매 프레임 호출되며,
DeltaTime을 활용해 FPS와 관계없이 일정한 속도로 액터의 동작을 제어 가능.
- DeltaTime:
- FPS에 따라 변화하는 한 프레임의 시간.
- 이를 사용해 프레임 독립적인 움직임과 회전을 구현.
- DeltaTime을 활용한 회전 구현
- 초당 회전 속도(RotationSpeed) 변수를 Tick 함수에서 활용해 로컬 기준 회전 구현.
AddActorLocalRotation()으로 로컬 기준 회전 적용 가능.
- FPS에 관계없이 초당 일정 각도로 회전하려면,
RotationSpeed * DeltaTime를 사용.
배운 점
- Transform 속성의 이해는 언리얼 엔진 내 오브젝트 조작의 기본.
- C++를 활용해 효율적이고 정교한 Transform 조작이 가능함.
- Tick 함수와 DeltaTime을 활용해 FPS 독립적인 로직을 구현할 수 있어야 함.