Fabric for Minecraft 26.1 更新总结

Fabric for Minecraft 26.1 更新总结

三月 25, 2026

🧵 Fabric for Minecraft 26.1 更新总结

📅 发布日期:2026 年 3 月 14 日
🔗 原文:https://fabricmc.net/2026/03/14/261.html


⚠️ 重要提醒

在开始之前,Fabric 团队特别强调了几点:

  1. 玩家请耐心等待 - 给模组开发者足够的时间更新到新版本
  2. 备份世界存档 - 由于世界存储格式发生重大变化,请务必提前备份
  3. 旧模组不兼容 - 1.21.11 及之前版本的模组需要重新编译才能工作

🎯 核心变化

代码不再混淆

Minecraft 26.1 是首个不混淆代码的版本!这意味着:

  • 开发者可以直接阅读和理解 Minecraft 源码
  • Yarn 映射不再受官方支持,推荐迁移到 Mojang 官方映射
  • 所有现有模组需要重新编译

Java 版本要求提升

组件 最低版本要求
Gradle JVM Java 25
IntelliJ IDEA 2025.3

💡 提示:可以在 IDE 的 Gradle Settings 中配置 Java 版本

OpenGL 即将淘汰

26.1 是最后一个仅支持 OpenGL 的 Minecraft 版本。根据 Mojang 的计划:

  • 26.2 快照将支持 OpenGL 和 Vulkan 双后端
  • 一旦 Vulkan 后端稳定,OpenGL 将被移除
  • 使用原生 OpenGL 调用的模组需要迁移到 Blaze3D API

🛠️ Fabric API 变更

已移除的模块

以下模块已被移除,请检查你的模组依赖:

  • fabric-convention-tags-v1
  • fabric-loot-api-v2
  • HudRenderCallback → 改用 HudElementRegistry

⚠️ 注意:fabric 模组 ID 已移除(三年前已弃用),请改用 fabric-api

新增 API

维度事件

现在可以直接修改维度属性,而无需遍历每个生物群系:

1
2
3
4
5
DimensionEvents.MODIFY_ATTRIBUTES.register((dimension, attributes, registries) -> {
if (dimension.is(BuiltinDimensionTypes.OVERWORLD)) {
attributes.set(EnvironmentAttributes.CLOUD_COLOR, PURPLE);
}
});

方块/物品使用事件

新增 4 个更精确的事件:

事件 触发时机
BlockEvents#USE_ITEM_ON 物品使用在方块上之前
BlockEvents#USE_WITHOUT_ITEM 空手使用方块之前
ItemEvents#USE_ON 物品使用在方块上之前
ItemEvents#USE 物品使用之前

方块颜色注册表

ColorProviderRegistry 已简化为 BlockColorRegistry

1
2
3
4
5
6
7
// 旧代码
ColorProviderRegistry.BLOCK.register((state, level, pos, tintIndex) -> [...], ModBlocks.EXAMPLE_BLOCK)

// 新代码
BlockColorRegistry.register(List.of(new BlockTintSource() {
[...]
}), ModBlocks.EXAMPLE_BLOCK)

📦 Minecraft 核心变化

ItemStackTemplate

ItemStack 现在必须在世界加载后才能创建。新增 ItemStackTemplate 类:

  • 不可变类
  • 表示物品、数量和 DataComponentPatch
  • 世界加载前无法访问组件

配方序列化器简化

1
2
3
4
// 之前:每个配方需要内部类实现 RecipeSerializer
// 现在:直接用 MapCodec + StreamCodec
Registry.register(BuiltInRegistries.RECIPE_SERIALIZER, "mod_recipe",
new RecipeSerializer<>(ModRecipe.CODEC, ModRecipe.STREAM_CODEC));

自动渲染层

ChunkSectionLayer 替代了 RenderType/RenderLayer

1
2
3
4
// 之前需要手动注册
BlockRenderLayerMap.INSTANCE.putBlock(MyModBlocks.TATER_GLASS_BLOCK, RenderLayer.TRANSLUCENT);

// 现在自动处理

🔧 开发者迁移指南

构建脚本更新

使用 Loom 1.15 + Gradle 9.4.0

1
2
3
4
5
6
7
8
9
// 旧插件
plugins {
id 'fabric-loom' version '...'
}

// 新插件
plugins {
id 'net.fabricmc.fabric-loom' version '1.15'
}

依赖配置变更

1
2
3
4
5
6
7
// 之前
modImplementation 'net.fabricmc:fabric-api:...'
remapJar {}

// 现在
implementation 'net.fabricmc:fabric-api:...'
jar {}

API 重命名

由于迁移到官方映射,部分 API 名称已变更:

旧名称 新名称
ItemGroupEvents CreativeModeTabEvents
ColorProviderRegistry BlockColorRegistry

📖 完整变更列表见:Fabric Docs - 26.1 迁移指南


💭 总结

Fabric 26.1 是史上最大的单次更新,主要特点:

✅ 优点 ⚠️ 注意事项
代码不再混淆,开发更友好 旧模组不兼容,需要重新编译
工具链大幅改进 Java 25 要求较高
新 API 更简洁易用 OpenGL 即将淘汰
为未来 Vulkan 支持铺路 部分 API(如模型加载)可能暂不可用

🔗 相关链接


最后更新:2026-03-25
作者:辉夜星瞳