Unity的本地数据库和服务器数据库分别用什么好

Unity的本地数据库和服务器数据库分别用什么好,第1张

sqlite也可以支持服务器存储的;
支持跨平台,像很对安卓的应用可以找到它的影子;
sqlite是一个单文件的数据库文件系统,属轻型数据库,理论支持百万级数据量;性能方面不能但看数据库本身,还要看你的设计,设计的不好10万级有点悬;
另外,网络多应用共享时,容易造成死锁;
个人建议啊,要是做网络游戏,不太建议用sqlite做服务器数据库,到是可以做客户端内嵌的小型数据库。

Unity会下载Assetbundle本地中,它的工作原理是先通过(版本号下载地址)先在本地去找看有没有这个Assetbundle,如果有直接返回对象,如果没有的话,在根据这个下载地址重新从服务器或者本地下载。这里版本号起到了很重要的作用,举个例子,同一下载地址版本号为1的时候已经下载到本地,此时将版本号的参数改成2 那么它又会重新下载,如果还保持版本号为1那么它会从本地读取,因为本地已经有版本号为1的这个Assetbundle了。你不用担心你的资源本地下载过多,也不用自己手动删除他们,这一切的一切Unity会帮我们自动完成,它会自动删除掉下载后最不常用的Assetbundle ,如果下次需要使用的话只要提供下载地址和版本后它会重新下载。
我们在聊聊Assetbundle 中的脚本,在移动平台下Assetbundle里面放的脚本是不会被执行的,还记得我们打包前给两个Prefab挂上了脚本吗?在手机上将Assetbundle下载到本地后,加载进游戏中Prefab会自动在本地找它身上挂着的脚本,他是根据脚本的名来寻找,如果本地有这条脚本的话,Prefab会把这个脚本重新绑定在自身,并且会把打包前的参数传递进来。如果本地没有,身上挂的条脚本永远都不会被执行。
在Prefab打包前,我在编辑器上给脚本中的变量 name 赋了不同值,当Prefab重新载入游戏的时候,它身上脚本的参数也会重新输出。
如果你的Assetbundle中的Prefab上引用的对象,那么这样做就会出错了,你需要设定他们的依赖关系。或者运行时通过脚本动态的载入对象。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10784210.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存