Introducción
En este artículo vamos a ver cómo guardar y cargar distintos tipos de datos en Unity usando la clase PlayerPrefs. Para ello vamos a analizar un prototipo que se pueden descargar en esta misma página y luego importarlo en Unity.
Paquete de Unity para Descargar
A continuación puedes descargar el paquete de Unity para importar en tu proyecto, dentro encontrarás los archivos que se utilizan en el vídeo de más abajo, el Script que se encarga de Guardar y Cargar los datos en Unity y también la escena donde está definida la interfaz gráfica y demás elementos.
En el siguiente vídeo vemos cómo guardar y cargar DATOS PRIMITIVOS con PlayerPrefs en Unity
Funcionamiento del Prototipo
Al iniciar el programa van a ocurrir tres cosas, en primer lugar se van a leer los datos almacenados en la memoria, luego se van a generar nuevos datos de manera aleatoria y finalmente se van a guardar esos nuevos datos en la memoria, sobreescribiendo los datos antiguos.
Todo esto se ejecuta dentro de un método Start por lo que se resuelva antes incluso de mostrar el primer frame en pantalla.
La información leída de la memoria se va a mostrar en la columna de datos del lado izquierdo, estos datos fueron generados en la sesión anterior y cargados de la memoria. Los datos generados en la sesión actual se van a mostrar en la columna de datos de la derecha, estos datos se generan al momento de iniciar el programa y se guardan en la memoria.
En la interfaz tenemos tres botones que nos permiten reiniciar la escena, borrar los datos de la memoria y salir del programa.
Cómo guardar y cargar distintos tipos de datos en Unity
En este ejemplo hacemos el guardado de datos usando la clase PlayerPrefs, la cual es una herramienta que cuenta con algunas funciones que fácilmente nos permiten hacer el guardado de distintos tipos de datos primitivos, solo necesitamos dar un nombre de identificación para el dato a guadar y pasar el valor de dicho dato y las funciones se encargan del resto, para leer el dato guardado simplemente lo obtenemos con el mismo nombre que lo guardamos.
A continuación dejo una serie de artículos específicos donde se hace el guardado y la carga de datos de distint
Guardar y cargar una variable tipo Bool con PlayerPrefs en Unity
Guardar y cargar una variable tipo Int con PlayerPrefs en Unity
Guardar y cargar una variable tipo float con PlayerPrefs en Unity
Guardar y cargar una variable tipo string con PlayerPrefs en Unity
Guardar y cargar una variable tipo Vector2 o Vector3 con PlayerPrefs en Unity