»
首页
|
手机数码
|
汽车资讯
|
游戏硬件
|
评测专题
|
手机壁纸
|
海淘值得买
|
度假
|
求职招聘
|
广告联系
» 您尚未登录:请
登录
|
注册
|
标签
|
帮助
|
小黑屋
|
TGFC Lifestyle
»
游戏业界综合讨论区
» 开发者称虚幻引擎5的Nanite技术或使游戏文件的体积暴涨
发新话题
发布投票
发布商品
发布悬赏
发布活动
发布辩论
发布视频
公司招聘信息
打印
[新闻]
开发者称虚幻引擎5的Nanite技术或使游戏文件的体积暴涨
MacPhisto
魔王撒旦
帖子
7075
精华
0
积分
14279
激骚
271 度
爱车
主机
相机
手机
注册时间
2009-8-31
发短消息
加为好友
当前在线
1
#
大
中
小
发表于 2020-7-18 16:12
显示全部帖子
posted by wap, platform: MAC OS X
为了优化加载速度,就要牺牲空间。如果要省空间,就要容忍更慢的加载,这个是矛盾是逃不掉的。
UID
142916
帖子
7075
精华
0
积分
14279
交易积分
0
阅读权限
40
在线时间
22809 小时
注册时间
2009-8-31
最后登录
2025-1-7
查看详细资料
TOP
MacPhisto
魔王撒旦
帖子
7075
精华
0
积分
14279
激骚
271 度
爱车
主机
相机
手机
注册时间
2009-8-31
发短消息
加为好友
当前在线
2
#
大
中
小
发表于 2020-7-19 00:55
显示全部帖子
posted by wap, platform: MAC OS X
引用:
原帖由 @342401 于 2020-7-18 16:46 发表
加载速度跟大小不矛盾,实际上,压缩格式的使用和进化,会同时带来游戏大小和加载速度的缩减
我说的“牺牲空间”是指开发者为了加快loading而采用的数据冗余。
比如,假设游戏里有5种素材A,B,C,D,E,有3个关卡X,Y,Z。
那么,如果是从“节省存储空间”的角度出发,游戏文档里应该只有A,B,C,D,E这5种素材,每个素材只出现一次。
然后在X,Y,Z关卡里,保存每个关卡用到了哪些素材,注意每个关卡保存的是素材的编号,而不是素材的内容本身。
但这样做的坏处是,假设X关的素材是A,B,E,而Y关的素材是B,D,E,读取X或者读取Y时会出现大量随机读写。磁盘IO就会成为性能瓶颈。
因此常用的优化方式是数据冗余。也就是说,在生成X关的数据是,把"A,B,E"这三种素材的实际内容打包为一份连续的数据,存储在X关里。
同样,在生成Y关时,把B,D,E的实际内容打包为一份连续的数据存储在Y关。
这样,在读取Y时,只需要顺序读取一次B,D,E到内存就可以了,不存在IO随机读写。
这也是为什么现在的游戏体积越来越大,COD有200G并不是因为COD真的有那么多素材,而是因为相同的素材被复制了很多份,目的是为了加快loading速度。
这也是为什么压缩算法的作用不大。因为文档体积增大的根本原因是开发者为了提升loading速度,宁愿采取数据冗余,牺牲体积。
而压缩算法本身解决不了“IO随机读写永远比顺序读写慢”这个特性。
UID
142916
帖子
7075
精华
0
积分
14279
交易积分
0
阅读权限
40
在线时间
22809 小时
注册时间
2009-8-31
最后登录
2025-1-7
查看详细资料
TOP
控制面板首页
密码修改
积分交易
积分记录
公众用户组
基本概况
版块排行
主题排行
发帖排行
积分排行
交易排行
在线时间
管理团队
管理统计