英文:
Unity distributed build
问题
在Unity中,使用Addressables构建AB包是一项耗时操作,即使使用了缓存服务器(加速器)也是如此。
是否有方法进行分布式或并行构建?例如,同时在局域网中的其他计算机上构建,或者多线程构建,似乎在构建后合并它们(catalog.json、link.xml、catalog_0.1.hash等)是困难的。
英文:
In unity, build AB is time-consuming by using Addressables, even Cache Server (Accelerator) is used.
Is there any way to make distributed or parallel builds? For example, building with other machines in LAN network at the same time, or multi threaded build, it seems that is difficult to merge them (catalog.json, link.xml, catalog_0.1.hash, etc) after building.
答案1
得分: 0
I can provide translations for the text you've provided:
"不是这样想的,实际上没有听说使用Unity3d并行构建步骤的选项。
上次我使用Unity的资源包时,我们使用了自定义解决方案,而不是Addressables,从大约6GB的资产构建资源包需要大约30分钟(约100个角色,带有3D模型、角色头像、技能特效、不同位置的艺术等)。
我们使用了CI(我们使用了Jenkins,但也可以使用其他解决方案),实际上并没有问题,因为它总是由其他机器执行的任务,不会阻碍任何人的工作。
如果您的构建时间与资产大小不成比例,我只能建议检查构建日志。也许您可以在那里找到一些瓶颈(在我们的情况下,有一次是构建前的自定义自动纹理调整,它占整个构建过程的约50%)。"
英文:
Don't think so, actually. Or at least, I didn't hear about any option to make build steps in parallel using Unity3d.
The last time I worked with Unity's asset bundles, we used our custom solution instead of Addressables and it took about 30 minutes per platform to build asset bundles from ~6GB of assets (about 100 characters with 3d models, avatars, vfxs for their skills, art for different locations, etc.)
We used CI for this (we used Jenkins, but it can be any other solution) and actually, there was no problem as it was always a task for some other machine and it didn't block the work for anyone.
If your build time is too long with less size of assets, I can only suggest checking build logs. Perhaps, you can find some bottleneck there (in our case once it was a custom automatic textures resizing before the build, that took about 50% of the whole build process).
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论