[Unity3D] 간단한 데이터 저장을 위한 PlayerPrefs 클래스 사용법
PlayerPrefs 클래스는 아주 간단한 방법으로 저장할 정보를입력하면 그걸 자동으로 파일로 저장/불러오기를 해 주는데,
Mac OS : ~/Library/Preferences 폴더 안에 unity.[companyname].[product name].plist 라는 이름으로 저장됨
윈도우즈 OS : HKCU\Software\[companyname]\[product name] 레지스트리 안에 저장됨
윈도우즈 웹플레이어 : %APPDATA%\Unity\WebPlayerPrefs안에
Mac 웹플레이어 :~/Library/Preferences/Unity/WebPlayerPrefs
이 클래스의 원문 링크는
http://docs.unity3d.com/Documentation/ScriptReference/PlayerPrefs.html
사용법
PlayerPrefs의 인자
voidDeleteAll() 모든 정보를 삭제한다.
voidDeleteKey(string key) 특정 키(정보)를 삭제한다.
float GetFloat(string key) float형 정보를 가져온다.
float GetFloat(string key, float defaultValue) float형 정보를 가져오는데, 그 키에 대한 값이 없으면 defaultValue로 가져온다.
intGetInt(string key) int형 정보를 가져온다.
intGetInt(string key, int defaultValue) GetFloat과 마찬가지
string GetString(string key) string형 정보를 가져온다.
stringGetString(string key, string defaultValue) GetFloat과 마찬가지
boolHasKey(string key) 이 key가 존재하는가
voidSave() PlayerPrefs 클래스에 있는 모든키와 그 정보를
저장한다.
voidSetFloat(string key, float value) float형 값을 클래스에 저장한다.
voidSetInt(string key, int value) int형값을 클래스에 저장한다.
voidSetString(string key, string value) string형 값을 클래스에 저장한다.
1. 어떤 int 형의숫자 저장하기
PlayerPrefs.SetInt("score",score);
PlayerPrefs.Save();
PlayerPrefs.SetInt 함수는 인트형 값을 저장하는 함수인데, 앞의 string은 이 값이 뭔지,즉 변수명이라고 보면 된다. 뒤의 int 값은어떤 값을 저장할건지를 말한다.
이렇게 PlayerPrefs 클래스에 score의 값을 넣었으면 그걸 파일에 넣기 위해(저장) PlayerPrefs.Save()를 호출한다.
2. 어떤 int 형의값 가져오기
int temp =PlayerPrefs.GetInt("score");
temp에다가 내가PlayerPrefs로 저장한 값 중 score라는 키를 가진 값을 가져와서 temp에 저장한다