[Unreal/C++] CSV로 만든 데이터 DataTable로 가져오기
본 게시물에서는 Excel을 이용하여 애니메이션 정보를 가지고 있는 CSV 파일을 만들고 Unreal 임포트를 통해 DataTable로 변환하여 사용하며, 만들어진 DataTable을 C++ 코드로 불러오는 방법을 기술합니다.
애니메이션을 위한 CSV 파일을 준비합니다.
A1 컬럼은 비워둡니다. 언리얼 엔진에서 파일을 import 할 때, 첫 번째 컬럼은 건너뛰어 버립니다.
첫 번째 컬럼 값은 Row ID 를 나타내고 데이터 테이블에서 Row 를 구분하기 위해 필요합니다.
Type과 Animation 등 RowName은 C++ 코드에서 struct 변수명으로 사용될 예정입니다.
파일 -> 다른이름으로 저장 -> CSV (쉼표로저장) -> 파일 이름을 적고 저장합니다.
액터나 액터 컴포넌트 등 필요에 따른 클래스를 상속받아 클래스를 제작합니다.
#include ".generated.h"와 UCLASS 사이에 해당 구조체를 작성합니다.
이 때 struct는 주의사항이 몇 가지 있습니다.
1. USTRUCT()와 GENERATED_BODY() 가 필요합니다.
2. FTableRowBase를 상속받습니다.
3. CSV 파일에서 정의한 RowName과 변수 이름을 동기화 시킵니다.
4. #include "Engine/DataTable.h" 헤더파일을 포함합니다.
클래스에는 구조체와 데이터 테이블을 포함합니다.
작성이 완료되면 CSV파일 임포트를 위해 컴파일을 해줍니다.
언리얼 콘텐츠 브라우저에서 임포트를 누르고 해당 CSV 파일을 선택합니다.
임포트는 DataTable로 하고 데이터 테이블 행 타입은 작성한 구조체로 설정합니다.
임포트가 완료되면 DataTable파일이 생성되고 정상적으로 데이터가 들어왔는지 확인합니다.
작성한 코드의 DataTable을 에디터나 코드를 작성하여 설정해줍니다.
BeginPlay에서 데이터를 확인해봅니다.
'Unreal > Manual' 카테고리의 다른 글
Unreal C++ AnimNotify 사용 하기 (0) | 2023.11.30 |
---|---|
Unreal Layered Blend per bone 본 별로 레이어 블렌딩 (0) | 2023.11.28 |
Unreal C++ Widget 변수 사용하기 (0) | 2023.11.26 |
Unreal C++ CreateWidget과 AddToViewport() (0) | 2023.11.26 |
Unreal 캐릭터 AimOffset 구현하기 (1) | 2023.11.24 |