《Unity3D高级编程 主程手记》第三章 数据表(一) 数据表的种类

        数据表相当于是一个外部的数据库,数据库中存储着与游戏人物相关的数据,只不过这个数据库里的数据是不能更改的。

        数据表是连接美术,设计策划,和程序的桥梁。

大部分数据都是在 Excel 里生成的

        Excel 能给你提供所有处理数据的功能,具有快捷、方便、易于保存、上手快、方便传播等特点。游戏行业里的数值策划更喜欢 Excel ,特别是做数据开发、数值平衡的工作。

        下面说所的数据表,基本上都是意味着从 Excel 文件中导出来的数据的集合。

代码数据

        最原始的数据存储方式是在程序里就编写好了的,这种通常是临时级别的数据。

  • 在进行更改、增加、删除时增加了大量的程序员的工作量。
  • 批量修改数值的难度大

        这种放在代码里的数据,基本都只存在于 Demo 阶段或 mini 游戏中,因为数据量小、更改的次数少,所以不会特别在意数值的平衡性。

文本数据

        文本是一种常用的数据表形式,例如用 .json、.xml、.csv 为扩展名的文件,里面全是字符串形式的文本,既包括数字的形式,也包括字符串的形式。在程序读取这些字符串内容后,将它们转化为相应的数据类型,如整数,浮点数,文本,数组。

        大多数情况下,使用文本读取字符串形式的数据,然后按规则来转化成相应的数据和数据组是极佳的选择。它的优点是肉眼能很直观的看到数据,也更容易查找问题,还能立即直接对文本进行修改,无需其他工具。

比特流数据

        数据比特流是一种相对于机器来说稍微直接点的数据表现形式。我们是将数据以 byte 的形式存放在文件里,程序通过读取二进制文件里的数据,按一定的规则将其转化为所需要的数据。相比于文本形式的数据文件,比特流数据文件的特点是,占用的空间更加,读取速度更,但缺点也同时存在,通用性差,无法直观看到文件中的内容,也无法做到不依靠程序进行任意修改

补充

        一个以 .txt 格式建立的 10MB 的数据文件,转化为二进制文件后,只要几百 KB 甚至几十 KB。

        使用比特流形式的数据协议来传输网络数据,以减少网络数据占用量,即使在网络不稳定的情况下,因为体量比较少,能够准确送达的概率也大了很多,从而网络反应速度也提高了很多。

        以比特流形式作为协议的标准很多。比如最近比较流行的 Google Protobuf,以及 MessagePack。

Google protobuf:

        Google 公司开发的开源协议,是现在市面上比较流行的数据协议。简单来说,和 XML 差不多,也是把某种数据结构信息以某种格式保存起来。但它是采用比特流形式存储数据的,并且有一定的通用性和拓展性,数据小而灵活,所以比较好用。

        用处:主要用于数据存储、传输协议格式等场合。 

        数据协议内容放在网络层的章节里介绍。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值