using UnityEngine;
public class GameManager : MonoBehaviour
{
private int previousDiamond; // 이전 프레임의 sv.diamond 값을 저장하기 위한 변수
void Start()
{
// 초기화: PlayerPrefs에서 값을 불러와서 sv.diamond에 할당
sv.diamond = PlayerPrefs.GetInt("dia");
previousDiamond = sv.diamond; // 초기값 설정
}
void Update()
{
// sv.diamond 값이 변경되었는지 확인
if (sv.diamond != previousDiamond)
{
// sv.diamond 값이 변경된 경우
// 변경된 값을 PlayerPrefs에 저장
PlayerPrefs.SetInt("dia", sv.diamond);
// 변경 이후의 값을 previousDiamond에 저장하여 다음 프레임에서 비교
previousDiamond = sv.diamond;
}
}
}
이런식으로 매 프레임 값이 변경되었는지 확인하고
값이 변경 되었다면 바로 저장 하는 건데
이런 방식으로 하면 혹시 렉을 유발할까요? 아니면 괜찮나요
저거 하나 정도는 ㄱㅊ
여러개는?
저런 단순 비교는 크게 상관 없긴 한데 구조가 좋지 않긴 해 제일 좋은 거는 다이아 갯수가 변하는 곳에서 저장하는 게 좋지 만약 그게 자주(매초 여러번? 아니면 매초?) 일어나는 방치형 게임 같은 게임이라면 일정 시간마다 저장해주거나 특정 이벤트가 일어났을 때 저장하게 하는 게 좋긴 해
이벤트나 Property 찾아보고 써라 - dc App
저걸로 느려지진 않지만 프로퍼티 세터에 넣어도 될거같은데 업데이트 안이여야 하는 이유가 있음?