【功能建议】修改资源加载方式,优化大型项目的开发体验

这里是别人发的帖子:

CocosCreator理论上肯定是可以开发大型项目的,但是由于编辑器打开时会遍历工程文件夹下面的所有资源,导致打开加载界面耗时很长,也会导致实际编辑项目的时候编辑器非常卡,点一个按钮卡5秒,编辑一个文本卡5秒,肯定是非常不好的体验。
虽然也可以采取fairyGUI开发界面的方式来变相解决这个问题,但是creator的出现不就是为了解决开发可视化的问题的啊,所以这样也是在背道而驰吧。

上面帖子发帖人是采用编写插件hook一下开发预览的资源加载的方式来解决问题的。
我来提供另一个思路——那就是不加载多余的资源。
原理如下:
1.所谓的大型项目,本质上其实跟小游戏工程并没有什么区别,仅仅在于资源文件数量过多,导致编辑器遍历加载卡顿;
2.任何项目的功能展示所需的资源数并不多,即使是功能预览也不需要完全加载所有的资源,那么完全只需要人为控制需要加载的资源即可;
3.而打包apk才需要所有的资源在项目文件夹之下,开发环境是不需要那么多的,所以原则上说完全可以排除出一个目录来加载外部资源即可实现流畅体验;

于是我用某西游项目为例,通过第一次痛苦的打开加载+耗时很长的构建流程得到了一个完全版的项目目录fullDir,然后移除项目下assets文件夹下的所有非必须资源,然后重新用ccc编辑器打开。
其结果很容易预见,无论是编辑器的打开还是开发环境的操作都是非常流畅的。
通过修复某西游项目在预览环境的报错,再测试打包apk的时候会有library目录下的文件报错缺失文件,修复后重新打包apk,实证可以正常运行apk,除了那些故意没被打包的资源对应的东西无法加载之外,然后再通过bat批处理脚本把所有排除的大量资源重新加入到项目文件夹之下,再重新打包apk得到一个完全版的fullAPK,通过实际测试,可以正常加载所有资源。

既然测试通过了,那么我的建议是2个方法:
1.就是上面帖子的发帖人的办法 改造构建流程,加入加载外部资源的办法
2.我自己的理解,既然是资源过多导致的加载卡顿,那么只需要不加载就行了,
因为引擎中动态加载的资源是必须要放在resource文件夹下面的,那么我完全可以把所有在开发环境多余的外部资源全部放入notload文件夹里面,仅在打包的时候加载里面的资源,平时不加载该资源即可。


发这个帖子的原因在于一个是上面的发帖人发了文章了,刚好在qq群里面看到了,就想着自己也曾经处理过这个问题,就想着跟着发一下自己的想法,二则是因为自己从17年下半年从零开始学cocoscreator,到现在已经快4年了,期间自己也算是做了一款中度游戏(文字修仙游戏,类似于想不想修真这个游戏,就是自己想抄这个游戏啊)上线taptap了,虽然数据不好,一开始水平不行,盲目乐观估计了自己的能力导致一开始bug较多(本地环境跟服务器环境还是有区别的),导致评分不太好。
到现在也投过好几次简历想找个程序岗位坐班,也曾想着用这个某西游项目做私服(犯法的,大家别这么干),就想着捞一笔就行了,但是吧经历都不怎么友好,第一次合作的老板就给了3k跑路了,第二个合作的人那边的代理不想做了。
再加上3-4月份的大规模投递简历,基本上最后都是石沉大海了,过了5月份,自己就是33周岁了,辞职在家一年多没有收入,人吧,没老婆没孩子,一个人还算没拖累家人,但是总不能一直吃爸爸妈妈家的米吧。所以已经决定了,不再想着做程序岗位了,不想进游戏行业了,在老家找个不需要什么技术的岗位就这么过日子吧,反正也已经打算好了,不要老婆不要孩子的了,自己一个人过,3k的工资也能过下去的,以后也许会自己做点小游戏自娱自乐吧。
都已经不打算做了,也就把这个思路说出来,给大家一点参考吧。
最后,谢谢cocos这个平台,算是圆了一半我做游戏的梦了。
祝大家2021,游戏一定爆款。

2赞

老哥水平找个工作单单混口饭吃应该不是问题呀

Unity也慢呀,这种要AssetDB的都慢。不要AssetDB(例如Laya那种path为主的)的才快,但是一些资源的BUG无法提前获知。为了一个健壮的工程,这点时间还是有的。你都开发月流水千万的产品,不怕缺少了预检测导致上线有BUG吗?

关键是是不是比别人慢。貌似比Unity快很多。

这打开省的一点时间,还不是转嫁给测试人员了?测试人员不是人家家长生的呀?

简历不好看,人家直接不看了。毕竟没有从业经验的人,就业歧视而已。

老哥以前做啥的,别放弃啊,总比那些培训班的好。

2015年做了8个月的策划,然后回老家2年半快递员,1年警察,然后赋闲在家自己写游戏到今天,工作不好找了,就业歧视就那点事啊。我现在缺的就是至少1年的坐班经验而已,远程上班的人家不认可啊。

警察,,,,,,,你这个跨度有点大啊,为啥不继续做警察呢,

赚不来钱啊,经常值班时间长啊。

手里有项目能拿出来看不?如果有,找个小点的公司上班也行啊。

有个上线tap的修仙类游戏,用来当面试案例我觉得可以了,但是很可惜,我就是没有从业经验啊,现在已经很难进了,如果是几年前没准就可以了,但是可惜,晚了。
因为没有从业经验 简历被刷掉的可能性很大的,好不容易接过远程面试的,基本上也是石沉大海了。
上午刚面了边锋。暂时还没问结果,晚上或者明天问一下吧。