1. 핵심 개념
- 언리얼에서 액터를 블루 프린트로 바꾸는 방법 3가지
- EventTick에서 DeltaSeconds를 이용한 거리, 시간, 속도 계산
- name, string, text는 무슨 차이?
2. 상세 내용
2.1. Convert the actor in reusable blueprint class

- New Subclass: Inheritance; 단일 액터의 부모 클래스를 찾아, 그것을 상속받는 새로운 자식 클래스를 만듬
- Child Actors: Composition; 여러 개의 완성된 클래스를 하나의 새로운 클래스 안에 컴포넌트로 형태로 품음
- Harvest Component: 액터는 버리고 내용물(컴포넌트 데이터)만 뽑아서 하나의 거대한 덩어리로 합침
2.2. 언리얼 DeltaSeconds를 이용한 거리, 시간, 속도 계산
| 구분 | 유니티 (Unity) | 언리얼 엔진 (Unreal Engine) |
|---|---|---|
| 기본 단위 (1 Unit) | 1미터 (1m) | 1센티미터 (1cm) |
| 일반적인 성인 캐릭터 키 | 1.8 Units | 180 Units |
| 중력 (Gravity) | -9.81 | -980.0 |
| * 거리: DeltaSeconds(s/fps) * Speed(cm/s) | ||
| * 시간: DeltaSeconds은 '초/프레임'으로 계산; 60프레임의 DeltaSeconds는 1/60으로 약 0.016초 | ||
| * 속도: 언리얼에서 Speed가 100이면 1초에 100cm(1m) 이동 |
2.3. FName vs FString vs FText
| 변수 유형 | 주요 특징 | 메모리 사용량 | 조작 가능성 | 주요 용도 |
|---|---|---|---|---|
| Text | 지역화 (Localization) 가능 | 가장 높음 | 가능 (게임 중 변경 가능) | 번역이 필요한 UI 메시지 (예: 게임 오버 메시지) |
| String | 일반 텍스트, 지역화 불가 | 중간 | 가능 (게임 중 변경 가능) | 번역이 필요 없고 조작이 필요한 텍스트 (예: 서버 이름) |
| Name | 고유 식별자, 지역화/조작 불가 | 가장 낮음 | 불가 (고정값) | 변경되지 않는 고유한 ID (예: 무기 이름, 업적 ID) |
| * FName: 식별용 이름표; Immutable하며 대소문자 구분하지 않음 - 언제 만들지? | ||||
| * FString: 데이터 조작용; Mutable하며 대소문자 엄격하게 구분 - 글자 하나하나를 동적 메모리에 할당해들고다님 | ||||
| * FText: 사용자 UI; 언리얼의 Localization 시스템과 연결됨; Immutable(단 formating은 가능) |
3. 질문 및 해결 (Q&A)
- Q1: 1초에 3m 이동하기 위해서 설정해야하는 속도는?
- A1: Speed = 300f
- Q2: 어떤 액터의 Velocity가 (200, 0, 0)일 때 60fps 기준인 피씨에서 1fps동안 이동할 때 x축으로 몇 유닛 이동?
- A2: 200 * 1/60 = 약 3.33cm
4. 관련 문서 (Links)
- [[이전 관련 노트]]
- [Unreal-Engine-텍스트-기반-변수-유형-Text-String-Name](Unreal Engine 텍스트 기반 변수 유형: Text, String, Name)