관리 메뉴

有希

Data Manager 본문

프로그래밍/UnityEngine기초

Data Manager

有希. 2021. 9. 5. 20:13

레벨별 스탯 수치 같은 데이터, 레벨별 다음 레벨로 넘어가기 위한 경험치 등수치와 관련된 것들. 혹은 던전의 패턴이나, 몬스터의 AI 등을 모두 데이터로 관리한다.

 ? 사용하는가? 디자이너나 기획파트에서 hp를 수정하고 싶다거나 그럴 때, 코드로 박아놓으면 그 부분을 모두 바꿔야 함. 혹은 하드코딩된 수치들은 exe파일에 묶여서 들어간다. 만약 밸런스가 너무 안맞아서 긴급 업데이트를 하고 싶다 그러면 배포를 다시 해서 바이너리가 다시 나가서 앱스토어에 다시 배포를 해야하는 문제가 발생한다.

보통 JSON이나 xml파일로 관리하게 됨. 이런 경우엔 패치하게 되면 웹으로 접근해서 xml이나 JSON파일만 수정하면 됨.

 

데이터의 경우에는 항상 들고있어야 하므로 clear는 하지 않는다.

데이터 요즘에는 JSON을 사용한다. 파싱(파일 읽는거)이 적어서 빠르게 작동함.

Xml의 장점은 계층 구조를 빠르게 파악할 수 있다.

 

JSON:

[] -> 배열 리스트

{} -> struct

유티니에서 JSON을 불러올 때는 Load<TextAsset>으로 한다.

클래스를 파일로 변환하려면 클래스 위에 [Serializable]을 붙여줘야 한다. JsonUnity.ToJson, FromJson 을 이용해서 클래스와 Json간 변환을 할 수 있다. , classpublic으로 해주어야 한다. 싫으면 [serializefield] 붙여줘야 한다.

'프로그래밍 > UnityEngine기초' 카테고리의 다른 글

게임 콘텐츠 전반  (0) 2021.09.05
Coroutine  (0) 2021.09.04
Object Pooling  (0) 2021.09.04
Sound Manager  (0) 2021.09.04
Scene Manager  (0) 2021.09.04