数据,作为任何一款软件的基础,显得很重要,没有数据就没有一切,u3d在数据方面的使用还是不错的。本文还是针对游戏开发中的数据进行统一概述,主旨在于帮助读者形成结构性的理念,小编认为任何的知识都需要形成结构化,才能在运用使用的时候,更清晰更有条理。
u3d包含的数据:静态数据,动态数据,资源数据三部分。
王者荣耀-妲己静态数据:例如游戏王者荣耀中,左边部分的文字“属性”,“故事”,“装备”等固定数据,一般情况下不会变化的文字;游戏中的策划数据;这部分数据一般会作为u3d工程中的文本存储如:excel,txt,json等格式。此部分数据的I/O操作在客户端处理。
动态数据:如上图中,金币,钻石,点券的数值“5500”,“30”,“71919”等。这部分数据在游戏的过程中随着你的等级或者pvp战斗过程,随时都在变化,增加或者减少,这部分数据存储在服务器,逻辑处理,数值计算都会在服务器上进行,最终有客户端请求获取数据,显示在游戏UI上面。采用的技术一般为结构体的数组,protobuffer+TcpUdp传输,通信传输涉及unity3d结构化-网络的内容(点开可查看),该部分数据一般比较繁琐,计算复杂,动态更新快。
资源数据:如上图:妲己英雄的人物模型,特效,服装,图片,音乐,视频以及游戏相关的资源。该部分资源是具体的表现渲染所用的资源,当然也包含影音素材。此部分数据涉及的读取存储技术为:AssetBundle数据,基于http的网络,www加载等技术,大部分游戏的资源包不可能过大,一般120MB左右的包算是一个手游比较合理的尺寸,超过200MB表示资源过大,这关系到用户是否愿意下载这款游戏,游戏是否会占用很多手机内存,同时也涉及到游戏的表现效果,必须找一个平衡点。此部分也是u3d游戏中性能的关键。
网友评论