답변:
PlayerPrefs는 크로스 플랫폼에서 작동하지만 안전하지 않기 때문에 게임 플레이 진행률 저장 파일 에는 권장 되지 않습니다 . 일반 텍스트 파일 인 플레이어는 파일을 쉽게 열고 내용을 변경하여 부정 행위를하거나 게임을 예측할 수 없게 만들 수 있습니다. 또한 머무르는 것이 보장되지는 않습니다.
PlayerPrefs 는 컨트롤 매핑 또는 음악 / sfx 설정과 같은 필수적이지 않은 환경 설정 정보를 위해 고안되었습니다. 플레이어는 자유롭게 변경할 수 있으며 시스템 복원 지점을 사용하고 잃어버린 경우에는 절대 놓치지 않을 것입니다. 일부 레지스트리 정보. 이로 인해 높은 점수를 얻지 못하거나 캠페인 진행률이 떨어지면 플레이어는 당황 할 것입니다!
대신 게임 플레이 진행률을 자신의 파일에 저장하는 것이 좋습니다 (일반적으로 바이너리, 수정하거나 수정하기를 원하는 경우 암호화 또는 서명 가능하지만 아래에서 Philipp의 설명 참조).
Application.persistentDataPath 를 사용 하여 각 플랫폼에서 안정적인 저장 위치를 얻을 수 있습니다 . 이는 일반적으로 위의 예와 같이 삭제되지 않는 사용자 데이터 폴더에 있습니다.
저장할 경로가 있으면 일반 C # IO 메서드를 사용하여 파일을 만들고 쓰고 읽을 수 있습니다. 세부 사항은 저장 파일 형식 및 구조에 따라 크게 달라 지므로 문제가 발생하면 수행하려는 작업과 문제가 발생한 위치에 대해 새 질문을하는 것이 가장 좋습니다.
Unity 사이트에는 두 가지 주요 저장 옵션 (PlayerPrefs 및 자체 저장 파일 생성)을 다루는 비디오가 있습니다. 비디오는 여기에서 찾을 수 있습니다 : http://unity3d.com/learn/tutorials/modules/beginner/live-training-archive/persistence-data-saving-loading?playlist=17117
PlayerPrefs는 어떤 플랫폼을 구축하든 "작동"하도록 설계된 K / V 스토어입니다. 설득력없는 이유가 없다면 계속 사용하십시오.
가장 좋은 방법은 서버 측 절약입니까? 필요한 모든 저장 정보를 json 문자열로 변환하고 mysql 서버에 문자열 데이터로 저장하고로드 할 때 서버에 연결하고 복원해야합니까?