tree6316
야금야금 개발
tree6316
전체 방문자
오늘
어제
  • 분류 전체보기 (34)
    • Unity (8)
    • Language (0)
      • Java (0)
    • Web (23)
      • HTML (9)
      • CSS (3)
      • JavaScript (9)
      • JSP (2)
      • Ajax (0)
    • DB (0)
      • MySQL (0)
      • Oracle (0)
    • OS (0)
      • CentOS (0)
    • Server (1)
      • CiscoPacketTracer (1)
    • DevTool (1)
      • VMware (0)
      • IDE (1)
    • ETC (0)
    • 일상 (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
tree6316

야금야금 개발

UGS 맛보기
Unity

UGS 맛보기

2023. 11. 20. 20:06

https://shlifedev.gitbook.io/unitygooglesheets/getting-start/apps-script

 

Apps Script Setup - UGS 개발문서

각 속성은 시트에 접근하기 위한 비밀번호, 시트 읽기 쓰기에 허용 여부입니다. 비밀번호는 원하는것을특입력하시고 나머지는 특별한 경우가 아닌이상 true

shlifedev.gitbook.io

UGS는 https://www.youtube.com/@shlifedev/videos 여기 유투브 운영하시는 분이 직접만든 GoogleSheet 툴 인 것 같다

 

UGS를 사용하면 자동으로 GoogleSheet에 있는 정보를 수정하기만 하면 유니티 상에 데이터가 바뀌어서 협업할때 편리한 기능인 것 같다

 

1. Unity에서 git 다운로드

나는 문서에 나와있는 다운로드 링크가 안되서 아래와 같이 링크를 수정해보니 git url 다운로드가 되었다

https://github.com/shlifedev/uni-google-sheets.git?path=src

.만약 git 다운로드가 안된다면 구글에 github desktop 을 다운 받은 뒤 환경변수로 git을 등록해둔다

아마 desktop을 실행하면 git에 대한 위치는

C:\Users\<사용자명>\AppData\Local\GitHubDesktop\app-3.3.4\resources\app\git\cmd

에 있으니 환경변수로 등록됬으면 cmd로 확인해보고 Unity를 다시 실행해서 git url을 다운 받으면 된다

 

2. Google에서 제공하는 Apps Script와 UGS라이브러리를 연동시킨다

아마 하는 이유는 구글에서 제공하는 API를 이용해서 Google Drive와 연동하기 위해 사전작업을 하는 것 같다

https://shlifedev.gitbook.io/unitygooglesheets/getting-start/apps-script

위 url에서 하라는 대로 다 하면 된다

 

3. 사용 해보기

연동이 잘 되었다면 이제 시트를 마음대로 생성해서 Generate를 누르면 파일 하나가 생성 될 건데 이게 json 파일로 되어 있다 

 

밑에 사진을 보면 json형식으로 데이터가 들어가 있는 것을 볼 수 있다

 

밑에 코드를 따라 치면 성공적으로 내가 적었던 값들이 나온다

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UGS;

public class DataLoadTest : MonoBehaviour
{
    void Awake()
    {
        UnityGoogleSheet.LoadAllData(); 
        // UnityGoogleSheet.Load<DefaultTable.Data.Load>(); it's same!
        // or call DefaultTable.Data.Load(); it's same!
    }
        
    void Start()
    { 
        foreach (var value in DefaultTable.Data.DataList)
        {
            Debug.Log(value.number + "," + value.level + "," + value.power);
        } 
        // var dataFromMap = DefaultTable.Data.DataMap[0];
        var dataFromMap = DefaultTable.Data.DataMap[1];
        Debug.Log("dataFromMap : " + dataFromMap.number + ", " + dataFromMap.level + "," + dataFromMap.power);
    }
}

 

잘 작동 된다! Good work!

개발자 분께서 API문서 만들어 놔서 찾아서 사용하면서 겪어보면 될 것 같다

 

4. 주의사항

개발자 분이 다 적어놓은 주의사항이다

 

1. API 제한

 - 개발단계에서만 계속 데이터를 불러오고 실제 빌드해서 사용할 땐 json파일만 덩그러니 놔둔뒤 보안을 위해 막아둔 뒤 사용할 것이기 때문에 괜찮다고 되어 있다

 

2. 보안사항

 - 위에서 말했듯이 악의적인 누군가가 파일을 뜯어 내 google driver에 접근하여 파일을 수정할 수 있기 때문에 실제 빌드하여 배포전에는 막아두어야 하는 것 같다

 

5. 느낀점

개인적으로 느낀 점은 json으로 만들어서 저장한 데이터를 개발자분이 만들어 놓은 함수로 불러내니 직접 json파일을 집어넣고 직접 코딩을 해서 파일을 읽어들이는 수고를 덜 수 있어서 협업할때 속도가 빠를것 같다

 

하지만 아직 많이 써보지 않아서 보안이나 성능이 괜찮을지는 모르지만 불안해서 아직은 쓰지 않을것 같다

저작자표시 (새창열림)

'Unity' 카테고리의 다른 글

유니티 사운드 매니저  (0) 2023.12.10
AOSFogWar  (0) 2023.12.03
Dotween 맛보기  (0) 2023.12.03
Unity_고급네비메쉬  (0) 2023.09.24
공간 채워넣기 알고리즘  (1) 2023.09.17
    tree6316
    tree6316
    야금야금 개발하는 블로그입니다.

    티스토리툴바