Unity/정보

[Unity] 구글 스프레드시트 연동

달시_Dalsi 2023. 11. 14. 16:33

구글 스프레드시트 연동 소개

엑셀등을 이용하여 개발에 필요한 파일을 사용하는 것보단 구글 스프레드시트를 이용하는 방법을 알아보자.

 

스프레드시트를 이용하면 아래와 같은 장점이 있다.

실시간 업데이트 및 협업 기능: 구글 스프레드시트는 여러 사용자가 동시에 작업할 수 있도록 협업 기능을 제공한다. 여러 개발자가 동시에 스프레드시트를 수정하면서 데이터를 업데이트할 수 있다.

웹 기반 인터페이스: 구글 스프레드시트는 웹 기반 인터페이스를 제공하므로 별도의 소프트웨어 설치 없이 어디서든 접근할 수 있다. 따라서 데이터 업데이트 및 관리가 편리하다.

실시간 데이터 동기화: 스프레드시트의 변경 사항은 실시간으로 반영되므로 데이터의 최신 버전을 얻을 수 있다. 이는 실시간으로 게임 내 데이터를 업데이트하는 데 유용할 수 있다.

API를 통한 연동 가능성: 구글 스프레드시트는 API를 통해 외부 응용 프로그램과 통합할 수 있다. 이를 이용하여 Unity에서 웹 요청을 통해 스프레드시트의 데이터를 읽어올 수 있다.

 

주요 기능

1. 값 가져오기

    IEnumerator Start()
    {
        UnityWebRequest www = UnityWebRequest.Get(URL);
        yield return www.SendWebRequest();

        string data = www.downloadHandler.text;
        print(data);
    }

위 사진이 기본적인 스프레드 시트 가져오는 코드이다.

URL은 스프레드 시트 주소의 마지막에 /edit~으로 되어있을껀데 그 이전까지만 복사하면된다.

예시로 https://docs.google.com/spreadsheets/d/1lXF5VnOeHd0Jp8HvtKcJbYa2-TfcRhyt-Td9Pb45Pw/edit#gid=0 가 주소라면 https://docs.google.com/spreadsheets/d/1lXF5VnOeHd0Jp8HvtKcJbYa2-TfcRhyt-Td9Pb45Pw만 복사하고 뒤에 /export?format=csv를 붙이면 된다.

 

테스트로 다음과 같은 스프레드시트를 만들어봤다.

 

그리고 공유를 링크가 있는 모든 사용자로 변경해줘야 한다.

 

 

이제 이 스프레드시트를 위에 코드와 함께 유니티에서 실행하면 값을 잘 가져오는걸 확인할 수 있다.

 

 

2. 스프레드 시트를 tsv 또는 csv로 받아오기

아래 사진에서 URL의 마지막에 tsv가 아니라 csv로 변경하면 값을 csv로 바꿔서 다운받을 수 있다.

 

 

tsv 결과

 

csv 결과

 

3. 다른 시트 접근

구글 스프레드 시트는 엑셀과 동일하게 여러 시트를 만들 수 있다.

시트1말고 다른 시트를 유니티로 불러오려면 URL 값을 변경하면 된다.

가장뒤에 이렇게 끝나면 시트1를 불러오고 시트2를 불러오고 싶으면 밑에 사진을 보자.

시트2는 위에 주소창 가장 뒤에 gid=449759684로 되어있다. 시트2번부터 큰 숫자가 부여된다. 시트1은 0으로 고정된다.

저 gid=~를 URL 뒤에 &와 함께 붙이면 해당 시트를 불러온다.

 

 

 

4. 시트 범위 지정 가져오기

시트 전체를 가져오지 않고 원하는 부분만 가져오게 할 수 있다.

이 사진처럼 A2:B3만큼만 가져오고 싶으면 URL뒤에 &range=범위를 적으면 된다.

'Unity > 정보' 카테고리의 다른 글

[Unity] AOS Fog of War 에셋  (0) 2023.12.02
[Unity] DOTween 사용하기  (0) 2023.11.27
[Unity] 스텐실 버퍼(Stencil Buffer)  (0) 2023.10.26
[Unity] Boids 군집 알고리즘  (0) 2023.10.16
[Unity] 고급네비메쉬  (0) 2023.09.23