[UE5] 언리얼 엔진 Data 처리 및 Datatable 관리

eomcri·2025년 2월 21일

이 글은 언리얼 엔진에서 외부 데이터를 어떻게 처리하고 데이터 테이블로 효과적으로 관리하는지에 대해 정리한 내용을 담고 있습니다.

데이터 타입

언리얼 엔진에서 주로 사용되는 외부 파일의 데이터 타입은 크게 아래 2가지로 나뉜다.

  • CSV
  • JSON

각 데이터는 각각의 특징을 가지고 있고 장단점이 있어 상황이나 처리할 데이터의 성격에 맞게 잘 선택해야한다.


CSV 파일(Comma Seperated Values)

CSV 파일은 ,(콤마)로 구문된 파일로 Excel이나 Google Spreadsheet와 같은 프로그램에서 쉽게 수정할 수 있으며 Notepad나 일반 텍스트 에디터에서도
간단하게 파일을 생성 및 수정할 수 있다.

id, name, age,
1, Joy, 14,
2, John, 17,
...

JSON 파일(JavaScript Object Notation)

JSON 파일은 Notepad나 일반 텍스트 에디터에서 만들고 편집할 수 있다. 이 파일은 온라인에 무료로 제공되는 검증 및 포매터 사이트를 통해 게임에 임포트 하기 전 구문 오류를 검사할 수 있다.

[
  {
  	"id": 1,
  	"name": "Joy",
    "age": 14
  },
  {
    "id": 2,
  	"name": "John",
    "age": 17
  },
  ...
]

차이점

  • CSV: 가볍고, 파일 자체 용량이 작으며 단순한 데이터에 대해 더 나은 가독성을 제공함
    • 언어 모델과 같이 대용량의 단순 데이터 처리에 용이함
    • 상용 프로그램으로 비개발자들과 쉽게 데이터를 처리할 수 있음
  • JSON: 더 나은 다용성(Versatility)과 확장성(scalability)을 가지고 특히 중첩된 정보가 있거나 계층적 데이터를 사용하는 복잡한 데이터의 처리에 적합함
    • 다이얼로그 분기나 퀘스트 시스템과 같은 데이터에 유용
    • 오탈자나 잘못된 계층 구조로 작성하면 구문 오류가 발생할 수 있음
      -> 검증 프로그램 필요

언리얼 내부 데이터 타입

  • Data Tables
  • Data Assets(CSV, JSON, Data Table을 통틀어서 Data Asset이라고 함)
  • Float Curve(외부 파일이 필요 없는 독립적인 타입)

단점

Data Assets

  • 모든 프로그래밍 문제를 해결하지 않음 -> 작업을 더 복잡하게 만들 수 있다!
  • 기본적으로 데이터 테이블에서 찾을 수 있는 단일행을 표시해주기 때문에 대규모의 아이템을 관리하거나 인터페이슬르 탐색하는 것이 어려울 수 있다!
    Data Tables: 데이터 에셋보다 속도가 느리거나 상하위 계층구조를 사용할 수없다!

결론

데이터 워크플로와 같은 것을 프로젝트에 통합하는 것이 프로젝트와 작업별로 어디에 언제 필요한지 파악하는 것이 중요!

profile
게임 개발자가 꿈인 게이머

0개의 댓글