Unity各类数据库的基本操作(五)-- PlayerPrefs
来源:互联网 发布:js修改css样式 生效 编辑:程序博客网 时间:2024/06/05 03:27
PlayerPrefs 游戏存档
Stores and accesses player preferences between game sessions.
On Mac OS X PlayerPrefs are stored in ~/Library/Preferences folder, in a file named unity.[company name].[product name].plist, where company and product names are the names set up in Project Settings. The same .plist file is used for both Projects run in the Editor and standalone players.
On Windows standalone players, PlayerPrefs are stored in the registry under HKCU\Software\[company name]\[product name] key, where company and product names are the names set up in Project Settings.
On Web players, PlayerPrefs are stored in binary files under ~/Library/Preferences/Unity/WebPlayerPrefs on Mac OS X and %APPDATA%\Unity\WebPlayerPrefs on Windows. There is one preference file per Web player URL and the file size is limited to 1 megabyte. If this limit would be exceeded, SetInt, SetFloat and SetString will not store the value and throw aPlayerPrefsException.
在游戏会话中储存和访问游戏存档。
可以理解为持久化储存,还可以理解为游戏存档, 玩RPG游戏的时候肯定会有游戏存档 存档中就会记录玩家以前游戏的过程,这些都是以数据的形式存在PlayerPrefs中的。
在Mac OS X上PlayerPrefs存储在~/Library/PlayerPrefs文件夹,名为unity.[company name].[product name].plist,这里company和product名是在Project Setting中设置的,相同的plist用于在编辑器中运行的工程和独立模式.
在Windows独立模式下,PlayerPrefs被存储在注册表的 HKCU\Software\[company name]\[product name]键下,这里company和product名是在Project Setting中设置的.
在Web模式,PlayerPrefs存储在Mac OS X的二进制文件 ~/Library/Preferences/Unity/WebPlayerPrefs中和Windows的 %APPDATA%\Unity\WebPlayerPrefs中,一个游戏存档文件对应一个web播放器URL并且文件大小被限制为1MB。如果超出这个限制,SetInt、SetFloat和SetString将不会存储值并抛出一个PlayerPrefsException。
using UnityEngine;using System.Collections;public class PlayerPrefsTest : MonoBehaviour {int j;float f;void Start () {j = PlayerPrefs.GetInt ("MyCount",10);//当PlayerPrefs第一次被使用的时候只创建不会赋值,第二次运行的时候就会赋值了//当第一次使用该键的时候,而且该键没有对应的值得时候,这个值就等于默认值//问:键什么时候会建立//没有键的时候,使用set 方法,会创建该键f = PlayerPrefs.GetFloat("MyFloatssss",0.5f);print (f);//在这直接打印打印的是f = 0.5f的值,而不是“MyFlost”的值print ("MyCount = " + PlayerPrefs.GetInt ("MyCount"));//第一遍打印的是"MyCount"的值,因为第一遍只创建不赋值所以为默认值0 }//end_Startvoid Update () {if (Input.GetKeyDown(KeyCode.A)) {j += 1;PlayerPrefs.SetInt ("MyCount", j);}//将j的值给键MyCountif (Input.GetKeyDown(KeyCode.C)) {//删除键PlayerPrefs.DeleteKey("MyCount");print ("删除MyCount键成功");}//判断是否存在“MyString”这个键if (PlayerPrefs.HasKey ("MyString")) {print ("存在MyString");} else {print ("不存在MyString");}}//end_Update}
- Unity各类数据库的基本操作(五)-- PlayerPrefs
- Unity各类基础数据库的基本操作(一)
- Unity各类数据库的基本操作(二)-- CSV
- Unity各类数据库的基本操作(三)-- JSON
- Unity各类数据库的基本操作(四)-- XML
- Unity各类数据库的基本操作(六)-- SQLite
- unity的本地化存储PlayerPrefs
- 关于Unity PlayerPrefs的问题
- unity之数据库的基本操作
- Unity实现排行榜(PlayerPrefs)
- Unity实现排行榜(PlayerPrefs)
- Unity--PlayerPrefs某种意义上的全局变量
- Unity 游戏存档 PlayerPrefs类的用法
- Unity 游戏存档 PlayerPrefs类的用法
- Unity 游戏存档 PlayerPrefs类的用法
- [Unity&]PlayerPrefs.GetString的使用案例
- Jedis的基本操作-各类数据
- Unity之数据持久化(PlayerPrefs)
- 【JMeter 菜鸟实操之三】性能自动化集成方案实施(监控资源、分布式压测等)
- 进程的开始与终止(exit和_exit区别)
- 山东省第三届ACM省赛 Pick apples
- XAMPP安装常见问题以及解决?
- hdu1787——GCD Again(欧拉函数入门)
- Unity各类数据库的基本操作(五)-- PlayerPrefs
- 合并两个有序链表
- oracle 12C 创建用户失败 解决方案
- JS面向对象
- JS中面向对象简单入门
- mac android编译打包时OOM:java heap space的解决方法,亲测有效
- netstat命令(持续更新中)
- Git撤销&回滚操作
- haproxy开启日志