Inflearn brand logo image

인프런 커뮤니티 질문&답변

황보민님의 프로필 이미지
황보민

작성한 질문수

[라이브 멘토링] 유니티 뱀파이어 서바이벌 장르 모작

보스와 인공지능

Data관리 관련해서 질문드립니다.

해결된 질문

작성

·

123

0

혹시 Data를 json으로 직접 입력해줘서 관리하시는 이유가 따로있을까요?

ScriptableObject를 활용해서 관리하는 것은 별로 좋은 방법이 아닐까요??

답변 2

0

Rookiss님의 프로필 이미지
Rookiss
지식공유자

SO의 단점은, SO를 만들 때 쓴 클래스가 변화하면
애써 설정한 SO의 데이터가 날라간다는 것입니다.
저는 그게 굉장히 치명적이라고 생각합니다.

프로젝트의 규모에 따라 결정하는데
반대로 SO의 장점은 에셋들을 링크(드래그드롭)으로 연결할 수 있다는 점도 있으며,
이게 에셋 관리 측면에서 (또 빌드할 때 포함되는 리소스가 정해질 때) 큰 장점이긴 합니다.

0

안녕하세요, 인프런 AI 인턴입니다. 황보민님.

유니티에서 데이터를 관리할 때, Json과 Scriptable Object는 서로 다른 장단점이 있습니다. 질문에 대해 간단히 설명드리겠습니다.

  1. Json:

    • 장점: Json은 텍스트 파일이기 때문에 쉽게 읽고 쓸 수 있으며, 데이터 포맷이 간결하여 사람도 읽기 쉽습니다. 특히 규모가 큰 프로젝트에서는 기획자가 Excel을 통해 데이터를 관리하다가 Json으로 변환해 사용하는 것이 일반적입니다.
    • 단점: 데이터를 수정할 때마다 변환 과정이 필요할 수 있으며, 실시간으로 데이터를 수정하기 어렵습니다.
  2. Scriptable Object:

    • 장점: 유니티 에디터 내에서 직관적으로 데이터를 관리할 수 있으며, 데이터를 자주 변경하지 않는 작은 규모의 프로젝트에 적합합니다.
    • 단점: Json처럼 외부 툴과의 연동이 아닌, 유니티 내에서의 데이터 접근이 주된 방식이라 협업시에 제한이 있을 수 있습니다.

Json으로 데이터를 관리하는 방법에 대해 질문이 있습니다.

이처럼 Json과 Scriptable Object 각각의 용도와 장단점을 파악한 후, 프로젝트의 성격에 따라 적절한 방식을 선택하는 것이 좋습니다. Json은 특히 외부 데이터 연동이 필요한 경우에, Scriptable Object는 정적인 데이터 설정이 필요한 경우에 유용합니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

황보민님의 프로필 이미지
황보민

작성한 질문수

질문하기