幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 3692|回复: 0

【教程】RMU的项目为什么这么大?该如何优化?

[复制链接]

50

主题

994

帖子

6699

积分

管理员

爱干啥干啥!

Rank: 9Rank: 9Rank: 9

积分
6699
发表于 2023-5-9 09:28:59 | 显示全部楼层 |阅读模式
估计一路上玩RM的小伙伴都震惊了,为什么一个RMU的项目会如此之大呢(2G)?
而且在Unity导入之后为什么变得更大了呢(10G)?
在这里我大概解释解释,毕竟这不仅仅是RMU的坑,还有Unity的坑。
希望未来的RMU版本可以修正一下这些问题,游戏本来不需要这么大和这么慢的。

首先是什么东西在占用空间,RMU的游戏组成无非就3部分:
1、图像
  a) 所有人物啊特效啊等的图片(PNG)。
  b) 组成地图的砖块(Tile Map)元件图片。
  c) 用来显示字体的字体图片(Sdf Font)。
2、声音
  a) 音效(Ogg)
  b) 音乐(Wav)
3、数据
  就是你在编辑器里填写的各项数值,事件等等。(Json)

括号里就是这些资源对应的在Unity里面使用的文件格式。
它们都放在你的项目的Assets文件夹里面。

Unity在打开一个项目之后,它并不会直接来使用这个原始的文件。
比如一张图,它在硬盘上是个PNG,非常的小,因为PNG是被无损压缩起来的。
但是在游戏引擎里直接读这张图的话,需要先解压缩,然后转换成显示的时候指定的格式,然后再交给显卡,就很慢。
Unity在第一次打开项目的时候,会把PNG先解压缩,变成一个对显卡更友好的格式,但是代价是文件会变大。
其他的Ogg还有Wav都同理,会被拷贝一份并且转换成读取速度更快的格式。

这样处理之后,被转换的文件还有一些杂七杂八的数据,就被存放在了
Library(主要是这个目录)
Logs
obj
Temp
这些目录中,这些目录可以删除并不会影响你的游戏,代价是下次打开又得重新生成,非常慢。
所以如果你硬盘空间不足,但是项目很多,可以删掉一时半会儿不会打开的项目里的这些目录。

除了Assets目录和上面所说的Unity第一次打开游戏生成的目录,其他目录里放的是Unity项目的配置文件,不能删除。
包括项目的配置(ProjectSettings),引用的Unity代码包(Packages),还有用户的配置(UserSettings),以及csharp项目文件。
这些文件夹占用空间也不大,所以不必担心。

总结一下,你的RMU项目中的目录有:
Assets(RMU游戏项目,什么都别删,包括那些.meta文件)
Library(以下四个可以删,删了的话下次打开Unity会把它们重新生成,非常慢)
Logs
obj
Temp
Packages(以下三个都是项目配置,不可以删,但是也不怎么占空间)
ProjectSettings
UserSettings


通过Unity生成过版本之后,游戏的Library会进一步变大,这是为了让每一次Build变得更快,所以Unity缓存了更多数据在Library里面。
经过一次版本生成,整个项目文件夹会膨胀到(15G)之多,这已经超过很多小型商业游戏了。

接下来再详细说说Assets目录里的冗余数据以及如何优化。

“放下屠刀,立地成佛” 故应先杀生,然后再成佛。

(\\_/) (-_-) ()+() this is bunny priest.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|幻想森林

GMT+8, 2024-7-14 15:49 , Processed in 0.017692 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表