내일배움캠프/TIL

TIL260420 - Unreal

옆집히드라 2026. 4. 20. 09:03

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)

'내일배움캠프 > TIL' 카테고리의 다른 글

TIL260422  (0) 2026.04.22
TIL260421  (0) 2026.04.21
TIL260415-260416  (0) 2026.04.16
TIL260415  (0) 2026.04.14
TIL260414  (1) 2026.04.14