Что такое PlayerPrefs в Unity C#?
PlayerPrefs – это встроенный класс Unity, предназначенный для сохранения и загрузки простых данных, таких как настройки игры, прогресс или пользовательские предпочтения. Данные сохраняются в локальной памяти устройства, и их можно легко получить при следующем запуске игры.
Этот класс поддерживает сохранение строк, чисел с плавающей запятой и целых чисел, что делает его удобным для хранения настроек, таких как громкость звука, выбранный язык или результаты игрока.
PlayerPrefs
- Простота использования: Для сохранения и загрузки данных используются статические методы, что упрощает процесс.
- Ограниченность типов данных: Поддерживаются только строки (
string), целые числа (int) и числа с плавающей запятой (float). - Сохранение на устройстве: Данные хранятся в локальной памяти и доступны после перезапуска игры.
- Подходит для небольших объемов данных: Рекомендуется использовать только для настроек или простых данных, так как при частом сохранении производительность может снизиться.
using UnityEngine;
public class PlayerSettings : MonoBehaviour
{
void Start()
{
// Сохранение данных
PlayerPrefs.SetInt("HighScore", 1000);
PlayerPrefs.SetFloat("Volume", 0.8f);
PlayerPrefs.SetString("PlayerName", "Player1");
Debug.Log("Данные сохранены.");
}
void Update()
{
// Загрузка данных при нажатии клавиши
if (Input.GetKeyDown(KeyCode.L))
{
int highScore = PlayerPrefs.GetInt("HighScore", 0);
float volume = PlayerPrefs.GetFloat("Volume", 1.0f);
string playerName = PlayerPrefs.GetString("PlayerName", "Unknown");
Debug.Log($"Имя: {playerName}, Рекорд: {highScore}, Громкость: {volume}");
}
}
}
Примечание: Данные сохраняются автоматически, но вы можете вызвать метод PlayerPrefs.Save() для ручного сохранения.
Комментарии