[Unity] PlayerPrefs

이훈·2024년 9월 10일

PlayerPrefs는 Unity에서 기본적으로 제공하는 기능이다.

일반적으로 우리가 unity를 실행하고 종료하면 모든 값은 초기화 된다.
그렇기에 매번 실행할때마다 같은 수행을 할 수 있다.
하지만 PlayerPrefs는 초기화(.DeleteAll())를 시켜주기 전까지 스스로 값을 유지한다.

int a = 0;
a += 5;

는 아무리 실행해도 5가 나온다.

if(PlayerPrefabs.HasKey("a"))
{
	int a = PlayerPrefabs.GetInt("a");
    PlayerPrefabs.SetInt("a",a+5);
}
else
{
	PlayerPrefabs.SetInt("a",0);
}

는 반복하면 5씩 늘어난다.

PlayerPrefabs는 다양한 활용이 가능할 것이다.
캐릭터 이름(SetString), 강화 비율(SetFloat), 아이템 갯수(SetInt), 등...
하지만 그만큼 잘못 사용하면 값이 이상하게 변하고 돌이킬 수 없다. (와! 아이템 복사 버그! 와! 스테이지가 5개인데 변수는 20을 넘었어!)

그렇기 때문에 PlayerPrefabs를 사용할 때는 조심해야한다.

profile
안녕하세요

0개의 댓글