
增强方块实体重载版
[非官方移植] 几乎无妥协地减少方块实体FPS卡顿,并提升其视觉效果
非官方移植版
这是原版增强方块实体模组的非官方移植版,增加了对更新版本 Minecraft 的支持,未来或许还会支持 Forge 和 NeoForge。
增强方块实体
EBE 是一款 100% 客户端的 Minecraft 模组,适用于 Fabric 模组加载器,旨在提升方块实体渲染性能,并通过资源包提供自定义功能。
它是如何工作的? EBE 让部分方块实体使用烘焙方块模型,而非卡顿的实体模型。
它仅仅是一款优化模组吗? EBE 不仅仅是优化模组,其优化还带来了许多视觉上的改进。
这些可能包括:
- 方块实体上的平滑光照
- 能够使用方块模型重新塑造方块实体
- 可切换诸如圣诞箱子等功能
- 能够从尽可能远的距离看到方块实体
那动画呢? EBE 最棒的一点在于,你仍然可以保留动画,同时获得烘焙模型带来的性能提升!大多数带动画的方块实体模型只会在绝对必要时才渲染。
我可以和 Sodium 一起使用吗? 是的。
- EBE 0.10.2 及以上版本与 Sodium 0.6+ 完全兼容
- 更早版本的 EBE 需要安装 Indium,并与 Sodium 0.5.11 或更低版本搭配使用。
下载模组
如需稳定版,你可以查看 CurseForge 或 Modrinth 页面。如果你想要最新的开发版,可以使用 GitHub Actions(或者你也可以自行构建)。此模组需要 Fabric API
常见问题与帮助
问:我需要模组方面的帮助/需要报告错误!
答: 如果你在设置模组或与其他模组一起使用时遇到问题,我建议你加入我们的 Discord 服务器并在那里寻求帮助。 如果问题是 BUG,请在我们的问题追踪器(页面顶部的“问题”选项卡)上报告。
问:这个模组会导致箱子动画出错或让箱子隐形吗?
答: 这个错误已在 EBE 0.5 及以上版本中被完全消除。如果问题仍然存在(不应该),请在 GitHub 上留下问题或加入 Discord 服务器。与 Sodium 一起使用时,箱子盖可能会闪烁。
问:我的箱子仍然隐形!
答: 你很可能使用了低于 0.4 的 Sodium 版本,该版本默认不支持某些 Fabric 渲染功能。如果你需要在 EBE 中使用低于 0.4 的 Sodium 版本,则应安装 Indium。
FPS 提升
渲染 1700 个箱子:
原版

使用 EBE
帧率提升 155%!
你的模组与 EBE 不兼容吗?
如果你是一个对方块实体渲染进行修改的模组开发者,你的模组可能会被 EBE 破坏。幸运的是,EBE 提供了一个 API,允许你强制禁用其功能,从而让你的模组正常运行。
你也无需在你的开发环境中将 EBE 添加为依赖项!
添加入口点
fabric.mod.json:
{
"entrypoints": {
"main": [...],
"client": [...],
"ebe_v1": [
"my.mod.compat.EBECompatibility"
]
}
}
需要修改配置值?实现 BiConsumer<Properties, Map<String, Text>>
my.mod.compat.EBECompatibility:
public class EBECompatibility implements BiConsumer<Properties, Map<String, Text>>, ... {
@Override
public void accept(Properties overrideConfigValues, Map<String, Text> overrideReasons) {
overrideConfigValues.setProperty("render_enhanced_chests", "false"); overrideReasons.put("render_enhanced_chests",
Text.literal("EBE 增强箱子与我的模组不兼容!")
.formatted(Formatting.YELLOW));
}
...
}
accept(Properties, Map<String, Text>) 函数会在 EBE 加载配置值时被调用。你可以通过设置 overrideConfigValues 中对应的属性来覆盖所需的配置值。这也会在配置菜单中使该选项变为灰色。
为了向用户解释你的模组为何做出此更改,你可以向 overrideReasons 映射中添加一个文本组件,其键为你所更改选项的键。
使用 Yarn 映射时,Text 是 net.minecraft.text.Text。
需要手动重新加载 EBE?实现 Consumer<Runnable>
my.mod.compat.EBECompatibility:
public class EBECompatibility implements Consumer<Runnable>, ... {
private static Runnable ebeReloader = () -> {};...
@Override
public void accept(Runnable ebeConfigReloader) {
ebeReloader = ebeConfigReloader;
}
}
如果你的模组需要根据已加载的资源修改 EBE 的配置值,可能会遇到加载顺序问题。这可以通过手动重新加载 EBE 来部分解决。
accept(Runnable) 函数会在 EBE 首次加载时被调用。该 Runnable 执行 EnhancedBlockEntities.load()。将其存储在字段中,以便在需要时执行。
void onMyModResourceReload() {
EBECompatibility.someParameter = true;
EBECompatibility.ebeReloader.run();
// 你在 EBECompatibility 中的配置修改处理器可以根据
// EBECompatibility.someParameter 改变其行为。
}
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。