动态资源加载 常见问题解答 - Kasualix/ModernFix GitHub Wiki

什么是动态资源加载?

动态资源加载是现代化修复一项全新的优化内容。它对 MC 进行了修改,使方块和物品模型能够动态地加载而非在启动时直接全部一次性载入。这可以加快游戏的启动速度并减少内存占用,尤其是在多模组情况下。

我们应该期望看到哪些方面的提升?

BlanketCon '23 准备的整合包在启用此选项后,内存占用从 1.7 GB 掉到了 945 MB —— 减少了 55%,甚至是在已经安装了铁氧体磁芯的情况下。

TODO:收集更多数据。 :)

如何开始?

现代化修复在默认情况下只会启用 embeddedt 认为是安全的优化,以确保最大的模组兼容性(有时也会出些小意外,但修一修也就能完美兼容了)。

不幸的是,动态资源加载,其进行的调整过于底层,很有可能会以 embeddedt 无法预料的方式破坏别的模组。因此,它在默认情况下是禁用的。要启用它,请前往config/modernfix-mixins.properties,在文件中加入以下内容:

mixin.perf.dynamic_resources=true

如果你因此遇到任何问题,可以通过删除这一行内容来禁用它。我们鼓励那些已经测试过动态资源加载并发现其运作良好的整合包打开这个选项。兼容性问题应与特定玩家的硬件没有关系。

使用动态资源功能时最有可能遇到的问题是启动时崩溃或者某些模型的纹理不见了。

从前不是有过类似此优化的调整吗?

是的,在 1.12 黄金纪元,原版修复曾有一个分支,实现了类似的优化。但不幸地是,那个补丁从未真正完成开发,且与很多模组都不兼容。相比之下,现代化修复的动态资源加载在新的游戏版本中正积极地开发,并且(就 embeddedt 所知)与大多数模组兼容而不需要任何额外的调整。

(如果你对 1.12 上的动态模型加载感兴趣,去试试 VintageFix 吧。)