美文网首页
unity3D制作游戏中数据存储方式的选择

unity3D制作游戏中数据存储方式的选择

作者: MakingGames | 来源:发表于2018-03-06 16:14 被阅读0次

本人新手,第一次做独立游戏,在选择unity存储数据的时候,查阅了一些资料。一共有这么几种形式,CSV、XML、json、sqllite、scriptable-object。下面一一说明:

CSV:是一种逗号来分割的纯文本文件,每个字段用“,”隔开,每一段末尾有/n 。制作者打开这个文件,然后按照“,”和“/n”来将获得的数据变成自己想要的格式读取就好了,比如二维数组。

优点:纯文本很小

缺点:每个值在读取的时候无法知道代表什么意义,完全是按照这个值在数据中的位置来定义他的意义的。这就造成了每个值在数据中的位置都是有意义的,当策划在删表或者增表的时候,有时候会让中间的值增加或者减少,那这样程序就需要去修改后面的值得index。很麻烦,一种解决办法是不让删,只新增,而且只在表的最后新增,这种治标不治本,会让表很冗余,策划也不好维护,因为很多时候有很多管一个功能的值隔很远。

XML:数据采用key-value的形式存放,就是说你如果要查找英雄名称,程序就是类似找name这么一个值,程序能看明白自己在干什么。

优点:不清楚

缺点:看起来好像比较复杂,里面有很多感觉平时用不到的功能,而且比纯文本大一些

Json:数据采用key-value的形式存放。

优点:纯文本,也很小

缺点:不清楚

SQlite:感觉是最好的一种形式,没有仔细研究

scriptable-object:unity自带的一种存储数据的方式

优点:读取最快

缺点:大数据量不好处理

最后选择了json文件的存储方式。选择之后第一步就是寻找怎么读取这个json文件,运用了litjson这个工具,从https://www.youtube.com/watch?v=OyQQ-7-22Hw这个视频中学来的。

第二步是配表之后怎么将数据变成json,因为平时都是用的EXCEL所以去网上搜索一了转换工具,选择了功能最为强大的一个https://github.com/koalaylj/xlsx2json

选择他的主要原因是游戏开发过程中会有很多时候会用到多维数组,最简单的转换工具全部是直接将EXCEL转化为json,你里面就是有数组他也不会管,全部是字符串的形式,这样的话就需要程序去再一次加工和处理,而且看起来也不直观,不明白是什么东西。这个工具可以将数据转化为带数组的带对象的各种数据格式,读取会很方便。

这个工具是在nodeJS下开发的,需要下载一个nodeJS到自己的电脑上,然后跟着里面的教程做就好,重要的是记得在命令行中打开下载下来的文件,然后输入npm install。然后EXCEL只能有1个sheet,不然报错。

相关文章

  • unity3D制作游戏中数据存储方式的选择

    本人新手,第一次做独立游戏,在选择unity存储数据的时候,查阅了一些资料。一共有这么几种形式,CSV、XML、j...

  • Node.js 实战_3 存储 Node 程序中的数据

    选择合适的存储机制的因素: 存储数据类型; 性能要求,数据的读取和写入速度; 存储数据量; 数据查询方式; 数据持...

  • 极客时间Android高级开发教程笔记二

    1.引言 数据存储有很多种方式,文件,数据库,SharedPreferences,如何选择正确的存储方式至关重要,...

  • Android 数据存储

    数据存储是每个项目必备技能,在Android中,可供选择的存储方式有SharedPreferences、文件存储、...

  • day07

    Android的存储方式 使用SharedPreferences存储数据 文件存储数据 SQLite数据库存储数据...

  • 03Stack栈

    数据结构=数据+存储方式+操作数据 存储什么数据?如int,string类型存储方式 如何组织数据,数据之...

  • SharedPreferences存储数据

    Android的存储方式 使用SharedPreferences存储数据文件存储数据SQLite数据库存储数据使用...

  • 从事Android以来的相关总结7-熟悉XML/JSON解析数据

    «熟悉XML/JSON解析数据,以及数据存储方式 数据的存储方式包括:File、SheredPreferences...

  • 数据结构基础

    1.什么是数据结构 数据结构是存储,组织数据的方式精心选择的数据结构可以带来更高的运行或者存储效率数据结构是很多算...

  • js中的数组对象和 Math对象

    数组对象 创建数组 数组可以存储任意数据类型的数据存储方式分为字面量方式存储、构造函数方式存储数据类型:5基1复5...

网友评论

      本文标题:unity3D制作游戏中数据存储方式的选择

      本文链接:https://www.haomeiwen.com/subject/swcrfftx.html