Unity脚本执行顺序、序列化与数据存储


相关博客:
https://blog.youkuaiyun.com/weixin_56166431/article/details/136347569

https://www.cnblogs.com/chenyu007/articles/18325424
https://blog.youkuaiyun.com/qq_42883222/article/details/115981479
https://blog.youkuaiyun.com/qq_55071342/article/details/127307129

脚本执行顺序

Script Execution Order设置

更改脚本执行的优先级
Edit->ProjectSettings->ScripExecutionOrder
拖动位置调整顺序
Default Time值越小,越先执行
缺点:依托于工程配置本身,如果脚本迁移,执行顺序信息就会丢失;

或者 DefaultExecutionOrder属性:
https://blog.youkuaiyun.com/s15100007883/article/details/101207442
https://blog.youkuaiyun.com/weixin_42069404/article/details/140691240

Update与LateUpdate在摄像机跟随中的应用

物体在Update中实现移动;相机跟随 在LateUpdate中实现移动;防止相机抖动。
·
·

序列化与数据存储

序列化:把对象转换为字节序列。用于传递对象、保存对象。
序列化:再次读取Unity时序列化的变量是有值的,不需要再次去赋值

[SerializeField]与public区别

public声明的变量在Inspector面板中是可见的
[SerializeField] 将原本不会被序列化的私有变量和保护变量变成可以被序列化的
在Inspector面板中显示public属性,序列化

已经被序列化(Serialize)的值,会显示在面板上
题外:
[NonSerialized]在面板中隐藏public属性,序列化
[HideInInspector]在面板中隐藏public属性,无序列化功能
https://www.cnblogs.com/CasualAttachment/p/7309327.html

PlayerPrefs\JSON\二进制持久化方案对比

PlayerPrefs

键值对存储(Windows存储在注册表中):PlayerPrefs.SetInt(“…”,1);
键:string;值:int float string
int Player = PlayerPrefs.GetInt(“…”); //读取
PlayerPrefs.DeleteKey(“…”);//删除
PlayerPrefs.Save();//游戏异常退出,调用save存储到硬盘中;游戏正常结束也要

JSON

一种符号表示法,把对象存储为JSON文件,本质是字符串。
键值对存储
键:string;值:int bool float 数组 对象
想要序列化私有变量 需要加上特性[SerializeField]
Json文档编码格式必须是UTF-8
JsonUtility.ToJson(…);//将类对象序列化为Json字符串
JsonUtility.FromJson<类名>(…);//读取文件中的Json字符串,将其转换为类对象

二进制持久化

节约存储空间,提升效率(便于网络通信)
字节数组转int类型:
byte[] bytes = BitConverter.GetBytes(…);
int i = BitConverter.ToInt32(bytes, 0);//从第0位开始

字节数组以指定编码格式转字符串:
byte[] bytes = Encoding.UTF8.GetBytes(“…”);
string s = Encoding.UTF8.GetString(bytes);

华为2288hv5服务器安装ESXI 6.7的过程如下: 1. 准备条件:根据文章\[1\]中的说明,需要准备好ISO文件,并将其放入服务器的虚拟光驱。 2. 安装ESXI:根据文章\[1\]和\[2\]的指导,重启服务器并从光驱启动。进入ESXI安装界面后,按照提示选择条款、键盘布局和设置root用户的密码。如果有多个RAID盘,选择指定的系统安装盘。最后,按F11开始安装ESXI。 3. 配置ESXI:安装完成后,重启服务器进入ESXI的配置页面。根据文章\[2\]和\[3\]的说明,输入设置的root密码,然后选择Configure Management Network进入网络配置页面。在Network Adapters中勾选所有网卡,并根据需要配置VLAN和IPv4信息。 总结起来,华为2288hv5服务器安装ESXI 6.7的步骤包括准备条件、安装ESXI和配置ESXI。具体的操作细节可以参考文章\[1\]、\[2\]和\[3\]中的详细说明。 #### 引用[.reference_title] - *1* *3* [华为2288hv5服务器安装ESXI 6.7(三):安装ESXI(转)](https://blog.youkuaiyun.com/z136370204/article/details/107105346)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [华为2288hv5服务器安装ESXI 6.7(三):安装ESXI](https://blog.youkuaiyun.com/Victor2code/article/details/103153811)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值