오늘의 학습 키워드
Excel에서 데이터 읽어오기
공부한 내용
Excel에서 데이터 읽어오기
엑셀에서 첫 줄에 key 값을 적고 그 아래로 value들을 적는다.
저장할 때 Sheet 파일 이름이 중요한데 이 이름이 스크립터블 오브젝트의 리스트의 변수명이 됩니다.
Serialize된 클래스의 변수명은 위의 key 이름과 동일해야한다.
using System;
[Serializable]
public class LunchDialogEntity
{
public int branch;
public string name;
public string dialog;
}
스크립터블 오브젝트에 [ExcelAsset] 속성을 부여하고 ScriptableObject의 리스트 변수명과 엑셀 시트의 이름과 동일하게 리스트를 선언해준다. * 만약 ExcelAsset에서 namespace 오류가 뜬다면 아래의 코드를 Packages/manifest.json 안의 "dependency"의 괄호 안의 부분에 넣어준다.
"net.mikinya.unity-excel-importer": "https://github.com/mikito/unity-excel-importer.git?path=Assets/ExcelImporter#v0.1.1/upm",
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[ExcelAsset]
public class LunchDialog : ScriptableObject
{
// 변수명과 엑셀 시트의 이름이 동일해야 함
public List<LunchDialogEntity> Entities;
}
이후에 엑셀 파일을 Reimport 하게되면
스크립터블 오브젝트 파일이 하나 생기게 된다.
이 데이터에 접근하여 text를 불러올 수 있다.
오늘의 회고
오늘은 Excel 파일을 유니티에서 읽어오는 방법을 배웠다. 과정이 귀찮지만 데이터 테이블을 엑셀로 관리해서 불러오는 것은 유용할 것 같다. 맨날 json에 데이터를 적고 불러오는 방식을 사용했는데 다음부턴 엑셀로 불러오도록 해야겠다.
내일부터는 개인 과제 개발에 들어가는데 기획한대로 잘 구현했으면 좋겠다. 내일도 파이팅!
'스파르타 Unity 1기' 카테고리의 다른 글
내일배움캠프 43일차 TIL - TextMeshPro 움직이기 (0) | 2023.10.11 |
---|---|
내일배움캠프 42일차 TIL - Manifest 오류 (1) | 2023.10.10 |
내일배움캠프 40일차 TIL - FSM (0) | 2023.10.05 |
내일배움캠프 39일차 TIL - static 클래스 (1) | 2023.10.04 |
내일배움캠프 38일차 TIL - 무기 2가지 구현 (0) | 2023.09.29 |