BBSMC Logo
模组整合包光影资源包软件汉化插件数据包地图
登录
模组插件数据包光影资源包整合包软件汉化地图
登录
设置
GeckoLib
GeckoLib

GeckoLib

GeckoLib 是《我的世界》模组的动画与渲染引擎,支持多种功能,如 3D 关键帧动画、缓动效果等。

前置实用工具装饰
2,0261a year ago
GeckoLib

GeckoLib

GeckoLib 是《我的世界》模组的动画与渲染引擎,支持多种功能,如 3D 关键帧动画、缓动效果等。

2,026
1
前置
实用工具
装饰

基本信息

我的世界Java版本

26.1.2
26.1
1.21.10–1.21.11
1.21.3–1.21.8
1.21–1.21.1
1.20.4–1.20.6
1.20–1.20.2
1.19.1–1.19.4
1.18.2
1.17.1
1.16.5
1.15.2
1.12.2

平台

\n \n \n Fabric
\n \n \n Forge
NeoForge
\n \n \n \n \n \n \n \n \n Quilt

运行环境

客户端和服务端

分类

前置
实用工具
装饰

其他链接

反馈问题 查看源码
Modrinth

搬运团队

BBSMC 官方搬运(1)
BBSMC 官方搬运(1)团队

搬运资源声明

对于可进行 JAR 文件搬运的许可证,我们提供站内下载服务;其他资源会跳转到原帖下载。资源更新可能不及时,建议前往资源内提供的原帖链接下载最新版本。

详情信息

许可证 MIT
发布于 2024-11-28
更新于 2026-04-25
简介渲染图更新日志版本百科反馈讨论

全部版本

1
2
3
22

Forge 1.21.5

on 2026 Apr 25
下载

GeckoLib v5.1.0

新增内容

  • 新增 AutoGlowingGeoLayer#shouldAddZOffset —— 用于提升对特定渲染类型或特殊情形的兼容性
  • 新增 AutoGlowingGeoLayer#getBrightness —— 可配置值,用于调整自发光层的亮度

变更内容

  • 在 AutoGlowingGeoLayer#shouldRespectWorldLighting 方法参数中添加了 RenderState
  • 小幅代码清理

修复内容

  • 修复 GeoArmorRenderer 不支持发光遮罩的问题。需小幅重写,略有破坏性变更,敬请谅解。
  • 修复当未注册为可同步的 GeoAnimatable 时,GeoArmorRenderer 在穿戴实例间共享动画的问题(#730)

NeoForge 1.21.4

on 2026 Apr 25
下载

v4.8.5

  • 修复 stopTriggeredSingletonAnim 实际上启动了触发动画而非停止它

Forge 1.21.4

on 2026 Apr 25
下载

v4.8.5

  • 修复 stopTriggeredSingletonAnim 实际上启动了一个触发动画而非停止它的问题

NeoForge 1.21.5

on 2026 Apr 25
下载

GeckoLib v5.0.2

修复的错误

  • 修复了 stopTriggeredSingletonAnim 实际上会启动一个触发动画而非停止它的问题

Forge 1.21.5

on 2026 Apr 25
下载

GeckoLib v5.0.2

修复的错误

  • 修复了 stopTriggeredSingletonAnim 实际上会启动一个触发动画,而非停止它的问题

Forge 1.20.1

on 2026 Apr 25
下载

v4.7.1.3

Fabric:

  • 更新 MixinItemRenderer 以提升第三方模组的兼容性

NeoForge 1.21.5

on 2026 Apr 25
下载

GeckoLib v5.0.1

修复的错误

  • 修复了 AutoGlowingGeoLayer 渲染出黑色和紫色模型的问题

Forge 1.21.5

on 2026 Apr 25
下载

GeckoLib v5.0.1

修复的漏洞

  • 修复了 AutoGlowingGeoLayer 渲染出黑色和紫色模型的问题

NeoForge 1.21.5

on 2026 Apr 25
下载

GeckoLib v5.0

新增内容

  • 新增 ItemInHandGeoLayer
  • 新增 PerBoneRender
  • 新增 DataTickets#IS_LEFT_HANDED
  • 新增 DataTickets#IS_CROUCHING
  • 新增 GeoRender#adjustPositionForRender
  • 新增 DirectionalProjectileRenderer
  • 新增 TextureLayerGeoLayer
  • 新增 CustomBoneTextureGeoLayer

内部变更

  • 移除了在加载无后缀的动画或模型文件时产生的一些不必要的警告
  • 修复了 DefaultedGeoModel 中使用旧格式的 Javadoc
  • 将缩放属性处理移入 GeoEntityRenderer 的 scaleModelForRender 方法中,并调整了睡眠姿势的位移以更好地适配缩放
  • 将 scaleModelForRender 从 preRender 中移出,改为独立调用
  • 优化了 RenderUtil#getTextureDimensions,并使其能够考虑加载后的修改
  • 优化了 BakedGeoModel#getBone

API 变更

  • 移除了 GeoRenderer#applyRenderLayersForBone。现在逐骨骼渲染在 #preApplyRenderLayers 中添加
  • 新增 GeoRenderLayer#addPerBoneRender
  • 修改了 ItemArmorGeoLayer 的实现方式,使其更高效,并支持鞘翅(尽管目前尚未完全正确)
  • 修改了 BlockAndItemGeoLayer 的实现方式,使其更高效且代码更清晰
  • 将 ItemArmorGeoLayer#prepModelPartForRender 重命名为 prepHumanoidModelForRender
  • 将 GeckoLibClient#getArmorModelForItem 的返回类型从基础 Model 改为 HumanoidModel,因为非人形模型从未被使用过
  • 在 GeoRenderer#renderFinal 中新增了 packedLight、packedOverlay 和 renderColor 参数
  • 移除了 GeoEntityRenderer#calculateYRot 中的 final 修饰符
  • 移除了 BoneFilterGeoLayer 和 FastBoneFilterGeoLayer

问题修复

  • 修复了 GeckoLibAnimatedTexture 在纹理加载失败时崩溃的问题
  • 修复了逐骨骼渲染任务干扰查询值的问题
  • 修复了渲染层中的 PoseStack 操作干扰骨骼位置获取的问题
  • 修复了 GeoItemRenderer 和 GeoObjectRenderer 在缩放时定位错误的问题
  • 修复了 GeoReplacedEntityRenderer 未正确传递 PoseStack 操作的问题
  • 修复了 ItemArmorGeoLayer 与其他使用相同 DataTicket 的图层发生冲突的问题

Forge 1.21.5

on 2026 Apr 25
下载

GeckoLib v5.0

新增内容

  • 新增 ItemInHandGeoLayer
  • 新增 PerBoneRender
  • 新增 DataTickets#IS_LEFT_HANDED
  • 新增 DataTickets#IS_CROUCHING
  • 新增 GeoRender#adjustPositionForRender
  • 新增 DirectionalProjectileRenderer
  • 新增 TextureLayerGeoLayer
  • 新增 CustomBoneTextureGeoLayer

内部变更

  • 移除了在加载无后缀的动画或模型文件时产生的一些不必要的警告
  • 修正了 DefaultedGeoModel 中使用旧格式的 Javadoc
  • 将缩放属性处理移入 GeoEntityRenderer 的 scaleModelForRender 方法中,并调整了睡眠姿态的位移以更好地适配缩放
  • 将 scaleModelForRender 从 preRender 中移出,改为独立调用
  • 优化了 RenderUtil#getTextureDimensions,并使其能够处理加载后的修改
  • 优化了 BakedGeoModel#getBone

API 变更

  • 移除了 GeoRenderer#applyRenderLayersForBone。现在逐骨骼渲染在 #preApplyRenderLayers 中添加
  • 新增 GeoRenderLayer#addPerBoneRender
  • 修改了 ItemArmorGeoLayer 的实现方式,使其更高效,并支持鞘翅(尽管目前尚未完全正确)
  • 修改了 BlockAndItemGeoLayer 的实现方式,使其更高效且代码更清晰
  • 将 ItemArmorGeoLayer#prepModelPartForRender 重命名为 prepHumanoidModelForRender
  • 将 GeckoLibClient#getArmorModelForItem 的返回类型由基础 Model 改为 HumanoidModel,因为非人形模型从未被使用
  • 在 GeoRenderer#renderFinal 中新增了 packedLight、packedOverlay 和 renderColor 参数
  • 移除了 GeoEntityRenderer#calculateYRot 的 final 修饰符
  • 移除了 BoneFilterGeoLayer 和 FastBoneFilterGeoLayer

问题修复

  • 修复了 GeckoLibAnimatedTexture 在纹理加载失败时崩溃的问题
  • 修复了逐骨骼渲染任务干扰查询值的问题
  • 修复了渲染层中的 PoseStack 操作干扰骨骼位置获取的问题
  • 修复了 GeoItemRenderer 和 GeoObjectRenderer 在缩放时定位不正确的问题
  • 修复了 GeoReplacedEntityRenderer 未正确传递 PoseStack 操作的问题
  • 修复了 ItemArmorGeoLayer 与其他使用相同 DataTicket 的图层发生冲突的问题

NeoForge 1.21.5

on 2026 Apr 25
下载

GeckoLib v5.0-alpha2

注意

  • 仍在探索每根骨骼渲染处理的替代方案,因为Mojang已使先前的动态渲染器变得不切实际。

修复内容

  • 修复了 GeoObjectRenderer 未存储打包光照的问题(#712)
  • 修复了 GeoEntityRenderer 不允许通用扩展 RenderStates 的问题
  • 修复了 AutoGlowingGeoLayer 中部分错误的 Javadoc 注释
  • 修复了 GeoArmorRenderer 未考虑发光或隐身 DataTickets 的问题
  • 重载纹理会导致发光与动画纹理出现异常问题

内部变更

  • AutoGlowingGeoLayer 不再移除基础纹理的部分区域,从而支持选择性动态发光
  • AutoGlowingGeoLayer 不再禁用着色器兼容性
  • 动画纹理与发光遮罩(glowmask)不再相互依赖。你现在可以在动画纹理上使用非动画的发光遮罩,反之亦然。

新增内容

  • 新增了 RenderUtil#getEmissiveResource 辅助方法
  • AutoGlowingGeoLayer 现在包含 shouldRespectWorldLighting 方法,允许你在绝对发光与结合世界光照进行明暗变化的发光之间进行选择

移除内容

  • GeckoLib 的发光纹理不再支持 mcmeta 文件创建。请改用发光遮罩图像(反正也简单得多)

Forge 1.21.5

on 2026 Apr 25
下载

GeckoLib v5.0-alpha2

注意

  • 仍在研究骨骼级渲染处理的替代方案,因为Mojang已使之前的动态渲染器不再实用。

问题修复

  • 修复了GeoObjectRenderer未存储打包光照的问题(#712)
  • 修复了GeoEntityRenderer不允许通用扩展RenderStates的问题
  • 修复了AutoGlowingGeoLayer中部分错误的Java文档
  • 修复了GeoArmorRenderer未考虑发光或隐身DataTickets的问题
  • 重新加载纹理会导致发光与动画纹理出现异常问题

内部变更

  • AutoGlowingGeoLayer不再移除基础纹理的部分区域,允许选择性动态自发光
  • AutoGlowingGeoLayer不再禁用着色器兼容性
  • 动画纹理与发光遮罩不再相互依赖。你可以在动画纹理上使用非动画发光遮罩,反之亦可。

新增内容

  • 新增RenderUtil#getEmissiveResource辅助方法
  • AutoGlowingGeoLayer现在包含shouldRespectWorldLighting方法,允许你在绝对自发光与随世界光照变化的自发光之间进行选择

移除内容

  • GeckoLib的自发光纹理不再支持mcmeta生成。请改用发光遮罩图像(反正也更简单)

NeoForge 1.21.5

on 2026 Apr 25
下载

GeckoLib v5.0-alpha1

注意

  • 自 alpha1 起,发光遮罩(glowmasks)和带动画的纹理尚不可用。此问题将很快修复 :)
  • 此外,我正在研究骨骼级渲染处理的替代方案,因为 Mojang 已使原先的动态渲染器不再实用。
  • 如果你使用了上述任何功能,请等待 5.0 正式版发布,谢谢。

通用变更

  • 更新至 Minecraft 1.21.5
  • 将更新日志转换为 Markdown 格式

内部变更

  • 重写了资源加载系统,以正确支持并行化资源处理,避免过度占用 I/O
  • 使 GeoArmorRenderer 从 HumanoidArmorLayer#setPartVisibility 继承骨骼可见性,以更好地兼容第三方模组
  • 默认将 boneResetTime 设为 5 游戏刻,并在重置时间设为 0 时自动完成重置。这可防止不可避免的部分游戏刻骨骼重置
  • 修复了对同步动画物品中键点击时,在使用触发动画或同步数据时产生冲突的问题 (#681)
  • 现在使用动画进行完整旋转的骨骼在重置时不再反向旋转,从而使旋转动画更流畅
  • 同步动画物品现在彼此之间可以正常堆叠
  • 为动画数据添加内存压缩。大型整合包的内存占用应有所降低
  • 为 Molang 中 Actor 变量的无效使用添加了安全检查
  • GeckoLib 实体渲染现已自动兼容 NeoForge 的 EntityRenderState 修改器
  • 覆盖了原版对实体名称牌渲染距离 64 方块的硬性上限。你现在最多可设置为 256 方块
  • 修复了 GeoBones 的世界空间定位未考虑部分游戏刻插值的问题
  • 修复了非生物实体渲染时未正确处理 Y 轴旋转的问题
  • 修复了死亡旋转在部分游戏刻下重复叠加的问题
  • 修复了 GeoObjectRenderer 中 BufferSource 未被正确设为非空的问题
  • 修复了 GeoEntityRenderer 在重新渲染时重复应用其他 PoseStack 操作的问题
  • 将大量渲染值创建逻辑移回原版实现,以提升与原版及其他模组的兼容性
  • 移除了 AnimationProcessor 中多个冗余的方法参数
  • 将 AnimationController#process 重命名为 AnimationController#startTick
  • 修复了 DefaultAnimations#genericFlyController 在不移动时无法停止的问题
  • 将 AnimationState 的处理提前至渲染之前,以优化 Molang 查询的填充
  • 修复了 AnimationController 的动画速度可能在单次渲染过程中被多次重新计算,导致动画处理不一致的问题
  • 将 Keyframes 重命名为 KeyframeMarkers
  • GeckoLib 现在会预先确定每帧渲染所使用的 Molang 查询,并预先计算所有相关值并缓存,从而支持更复杂的动画
  • 将 AnimatableManager 及其派生类移至不同包中
  • 将 AnimationController、AnimationProcessor、AnimationState 移至不同包中
  • 将 AutoPlayingSoundKeyframeHandler 移至不同包中
  • 移除了 AnimationPointQueue
  • 将骨骼级渲染层的渲染移至其余渲染完成之后执行
  • 调整了 DyeableGeoArmorRenderer 的工作方式,使其更加准确
  • 修复了多个 GeoRenderEvent 类中的 Javadoc 错误

API 变更

  • 所有 GeckoLib 资源现位于 /assets/geckolib/ 下
    • 动画文件位于 /assets/<modid>/geckolib/animations/
    • 模型文件位于 /assets/<modid>/geckolib/models/
  • 所有 GeoRenderer 现在基于 GeoRenderStates 运行,而非传递 animatable 对象。Mojang 已明确表示这是我们必须采用的方式 :(
    • 移除了 GeoRenderer#getAnimatable
    • 从 GeoRenderer 的方法中移除了多个参数,默认移至 GeoRenderState
    • 移除了 GeoEntityRenderer#isShaking
  • AnimationState 现在是用于在处理过程中传递动画状态的内部类。用户现在应使用 AnimationTest,其功能相同
  • GeoRenderer 扩展现在接受第二个泛型类型,即 RenderState 类型(以及 GeoRenderState)
  • GeoModel 的模型/动画引用不再需要文件路径前缀或后缀(例如,返回的模型资源中无需包含 geo/ 或 .geo.json)
  • DataTicket 现在必须通过工厂方法创建,以确保身份一致性
  • SerializableDataTicket 不再需要注册,但仍必须在模组构造阶段创建
  • GeoRenderer 中所有渲染方法的参数顺序已调整:PoseStack 和 RenderState(原 Animatable)位置互换
  • Molang 变量现在均为基于当前渲染通道的 AnimationState 运行的函数
  • AnimationController 不再需要传入 animatable 对象
  • 拆分了 AutoGlowingGeoLayer 中纹理获取与使用逻辑,以便模组按需覆盖纹理
  • 所有 DefaultAnimations 辅助方法现在默认使用 0 游戏刻过渡时间,以保持一致性与清晰性
  • 将 FormatVersion 转换为字符串,并采用更灵活的系统
  • 引入基于身份的查找机制用于同步单例 animatable 对象,以期消除类重复冲突
  • 将 AnimationState#getData 标记为可空,以避免混淆
  • 将 EasingType 中的 easingType 参数标记为可空,以避免混淆
  • 清理了 EasingType 的 Javadoc
  • GeoReplacedEntityRenderer 现在在尝试将实体作为 animatable 插入时会显式崩溃,以防止内存泄漏
  • 使 GeoReplacedEntityRenderer 与 GeoEntityRenderer 更加一致,以确保准确性
  • CustomInstructionKeyframeEvent、SoundKeyframeEvent 和 ParticleKeyframeEvent 已合并为 KeyFrameEvent
  • CustomInstructionKeyframeHandler、SoundKeyframeHandler 和 ParticleKeyframeHandler 已合并为 KeyframeEventHandler
  • 将 KeyFrameEvent 转换为 record 类型
  • 将 Calculation 转换为 record 类型
  • MolangQueries 再次变为环境无关(side-agnostic)
  • GeoRenderer 的多个部分现在额外提供关联对象用于处理(ItemStack、替换实体等)
  • 将 prepLivingEntityRenderState 移入 GeoEntityRenderer,以便必要时可被覆写
  • 移除了 EntityModelData
  • 移除了 DeferredGeoRenderProvider
  • 移除了 InternalUtil
  • 移除了 FileLoader
  • 移除了 Color,现已完全由 net.minecraft.util.ARGB 取代
  • 从各类 GeoModel getter 方法中移除了 GeoRenderer 参数,因其已不再需要
  • 重命名了 GeoArmorRenderer 中的骨骼变量,以避免与 HumanoidArmorModel 的字段名冲突
  • 将 GeckoLibCache 重命名为 GeckoLibResources
  • 将 AnimatableManager#setData 重命名为 AnimatableManager#setAnimatableData(及其对应的 getter)
  • 将 AutoGlowingTexture#getEmissiveResource 重命名为 #getOrCreateEmissiveTexture 以提高清晰度
  • 将 GeoEntityRenderState 移至 GeoRenderState
  • GeckoLibUtil 中的各类单例注册辅助方法已移至新的 SyncedSingletonAnimatableCache,相关方法的层级作用域也已缩小,以提高清晰度与安全性
  • 将 GeoRenderLayer#renderForBone 重命名为 #createPerBoneRender,现在要求你返回一个稍后执行的 Runnable 操作
  • 移除了 DynamicGeoBlockRenderer、DynamicGeoEntityRenderer 和 DynamicGeoItemRenderer。请改用渲染层处理骨骼特定逻辑。我将研究为此创建辅助类或其他替代方案
  • 改进了各类 GeoRenderEvent 的泛型类型,使其更具实用性

新增内容

  • 为 SingletonGeoAnimatable 添加了 stopTriggeredAnimation
  • 添加了 triggerArmorAnim 用于触发护甲动画 (#433)
  • 添加了 query.controller_speed Molang 查询
  • 添加了 query.limb_swing Molang 查询
  • 添加了 query.limb_swing_amount Molang 查询
  • 为基岩版风格动画 JSON 添加了 Catmull-Rom(平滑)缓动原生支持(感谢 Zigy 的初始工作)
  • 带动画的纹理现已支持发光遮罩 (#456)
  • 在 GeoRenderer 中添加了 #setBonesVisible 辅助方法,便于使用
  • 添加了 AnimationController#isTriggeredAnimation 用于检查当前触发的动画
  • 添加了 AnimationController#setAnimationState 用于在必要时直接设置控制器状态
  • 为每种渲染器类型添加了 CompileRenderState 事件钩子

Forge 1.21.5

on 2026 Apr 25
下载

GeckoLib v5.0-alpha1

注意

  • 自 alpha1 起,发光遮罩(glowmasks)和动画纹理暂不可用。此问题将很快修复 :)
  • 此外,我正在研究骨骼级渲染处理的替代方案,因为 Mojang 已使之前的动态渲染器不再实用。
  • 如果你使用了上述任何功能,请等待 5.0 正式版发布,谢谢。

通用变更

  • 更新至 Minecraft 1.21.5
  • 将更新日志转换为 Markdown 格式

内部变更

  • 重写了资源加载系统,以正确支持并行化资源处理,避免对 I/O 造成过大压力
  • 使 GeoArmorRenderer 继承自 HumanoidArmorLayer#setPartVisibility 的骨骼可见性逻辑,以更好地兼容第三方模组
  • 默认将 boneResetTime 设为 5 刻,并在重置刻数为 0 时自动完成重置,避免无法避免的部分刻骨骼重置问题
  • 修复了中键点击同步动画物品时,在使用触发式动画或同步数据时产生冲突的问题(#681)
  • 现在使用动画进行完整旋转的骨骼在重置时将不再反向旋转,从而实现更干净的旋转动画
  • 同步动画物品现在可以相互堆叠
  • 为动画数据添加内存压缩,大型整合包应能减少内存占用
  • 为 Molang 中无效使用 Actor 变量的情况添加安全检查
  • GeckoLib 实体渲染现已自动兼容 NeoForge 的 EntityRenderState 修改器
  • 覆盖了原版对实体命名牌渲染距离 64 格的硬性上限,现在最大可支持 256 格
  • 修复了 GeoBone 的世界空间定位未考虑部分刻线性插值(lerping)的问题
  • 修复了非生物实体渲染时未考虑其 Y 轴旋转的问题
  • 修复了死亡旋转在部分刻(partialTick)下重复叠加的问题
  • 修复了 GeoObjectRenderer 中 BufferSource 未被正确设为非空的问题
  • 修复了 GeoEntityRenderer 在重新渲染时重复应用其他 PoseStack 操作的问题
  • 将大量渲染值的创建逻辑移回原版,以提升与原版及其他模组的兼容性
  • 移除了 AnimationProcessor 中多个冗余的方法参数
  • 将 AnimationController#process 重命名为 AnimationController#startTick
  • 修复了 DefaultAnimations#genericFlyController 在不移动时无法停止的问题
  • 将 AnimationState 的处理提前至渲染之前,以优化 Molang 查询的填充
  • 修复了 AnimationController 的动画速度可能在单次渲染过程中被多次重新计算,导致动画处理不一致的问题
  • 将 Keyframes 重命名为 KeyframeMarkers
  • GeckoLib 现在会预先确定每一渲染帧将使用的 Molang 查询,并预先计算所有相关值并缓存,以支持复杂动画
  • 将 AnimatableManager 及其派生类移至不同包中
  • 将 AnimationController、AnimationProcessor、AnimationState 移至不同包中
  • 将 AutoPlayingSoundKeyframeHandler 移至不同包中
  • 移除了 AnimationPointQueue
  • 将骨骼级渲染层的渲染移至其余渲染完成后执行
  • 修改了 DyeableGeoArmorRenderer 的工作方式,使其更加准确
  • 修复了多个 GeoRenderEvent 类中的 Javadoc 错误

API 变更

  • 所有 GeckoLib 资源现存放于 /assets/geckolib/ 目录下
    • 动画文件存放于 /assets/<modid>/geckolib/animations/
    • 模型文件存放于 /assets/<modid>/geckolib/models/
  • 所有 GeoRenderer 现在基于 GeoRenderState 运行,而非传递 animatable 对象。Mojang 已明确表示这是必须采用的方式 :(
    • 移除了 GeoRenderer#getAnimatable
    • 从 GeoRenderer 的多个方法中移除了若干参数,默认移至 GeoRenderState
    • 移除了 GeoEntityRenderer#isShaking
  • AnimationState 现为内部类,用于在处理过程中携带动画状态。用户应改用 AnimationTest,其功能相同
  • GeoRenderer 扩展类现在接受第二个泛型类型,即渲染状态类型(RenderState 和 GeoRenderState)
  • GeoModel 的模型/动画引用不再需要文件路径前缀或后缀(例如:返回的模型资源无需包含 geo/ 或 .geo.json)
  • DataTicket 现需通过工厂方法创建,以确保身份一致性
  • SerializableDataTicket 不再需要注册,但仍须在模组构造阶段创建
  • GeoRenderer 中所有渲染方法的参数顺序已调整:PoseStack 与 RenderState(原为 Animatable)位置互换
  • Molang 变量现均为作用于当前渲染帧 AnimationState 的函数
  • AnimationController 不再需要传入 animatable 对象
  • 拆分了 AutoGlowingGeoLayer 中的纹理获取与使用逻辑,以便模组按需覆盖纹理
  • 所有 DefaultAnimations 辅助方法现默认使用 0 刻过渡时间,以保证一致性与清晰性
  • 将 FormatVersion 转换为字符串,并改为更灵活的系统
  • 引入基于身份的查找机制用于同步单例 animatable,以期消除类重复导致的冲突
  • 将 AnimationState#getData 标记为可空,避免混淆
  • 将 EasingType 中的 easingType 参数标记为可空,避免混淆
  • 清理了 EasingType 的 Javadoc
  • GeoReplacedEntityRenderer 现在在尝试将实体作为 animatable 插入时会显式崩溃,以防止内存泄漏
  • 使 GeoReplacedEntityRenderer 与 GeoEntityRenderer 更加一致,确保准确性
  • 将 CustomInstructionKeyframeEvent、SoundKeyframeEvent 和 ParticleKeyframeEvent 合并为 KeyFrameEvent
  • 将 CustomInstructionKeyframeHandler、SoundKeyframeHandler 和 ParticleKeyframeHandler 合并为 KeyframeEventHandler
  • 将 KeyFrameEvent 转换为 record 类型
  • 将 Calculation 转换为 record 类型
  • MolangQueries 再次变为环境无关(side-agnostic)
  • GeoRenderer 的多个部分现在额外提供关联对象用于处理(如 ItemStack、替换实体等)
  • 将 prepLivingEntityRenderState 移入 GeoEntityRenderer,以便按需重写
  • 移除了 EntityModelData
  • 移除了 DeferredGeoRenderProvider
  • 移除了 InternalUtil
  • 移除了 FileLoader
  • 移除了 Color,现已完全由 net.minecraft.util.ARGB 取代
  • 从多个 GeoModel 获取方法中移除了 GeoRenderer 参数,因其已不再需要
  • 将 GeoArmorRenderer 中的骨骼变量重命名,以避免与 HumanoidArmorModel 的字段名冲突
  • 将 GeckoLibCache 重命名为 GeckoLibResources
  • 将 AnimatableManager#setData 重命名为 AnimatableManager#setAnimatableData(及其对应的 getter)
  • 将 AutoGlowingTexture#getEmissiveResource 重命名为 #getOrCreateEmissiveTexture,以更清晰表达其用途
  • 将 GeoEntityRenderState 移至 GeoRenderState
  • GeckoLibUtil 中的各种单例注册辅助方法现已移至新的 SyncedSingletonAnimatableCache,相关方法的作用域层级也已缩小,以提高清晰度与安全性
  • 将 GeoRenderLayer#renderForBone 重命名为 #createPerBoneRender,现需返回一个 Runnable 供稍后执行
  • 移除了 DynamicGeoBlockRenderer、DynamicGeoEntityRenderer 和 DynamicGeoItemRenderer。请改用渲染层处理骨骼级逻辑。我将考虑为此创建辅助类或替代方案
  • 改进了各类 GeoRenderEvent 的泛型类型,使其更具实用性

新增内容

  • 为 SingletonGeoAnimatable 添加 stopTriggeredAnimation 方法
  • 添加 triggerArmorAnim 用于触发射甲动画(#433)
  • 添加 query.controller_speed Molang 查询
  • 添加 query.limb_swing Molang 查询
  • 添加 query.limb_swing_amount Molang 查询
  • 为 Bedrock 风格动画 JSON 添加原生 Catmull-Rom(平滑)缓动支持(感谢 Zigy 的初步工作)
  • 动画纹理现已支持发光遮罩(#456)
  • 在 GeoRenderer 中添加便捷方法 #setBonesVisible
  • 添加 AnimationController#isTriggeredAnimation 以检查当前触发的动画
  • 添加 AnimationController#setAnimationState 以在必要时直接设置控制器状态
  • 为每种渲染器类型添加 CompileRenderState 事件钩子

Forge 1.20.1

on 2026 Apr 25
下载

v4.7.1.2

Fabric:

  • 将 Redirect mixins 移至 WrapOperations,以避免与其他模组发生冲突

Forge:

  • 回滚 4.7.1 版本中对物品堆叠数量的更改,因为 Forge 不包含 MixinExtras,而强行添加会导致偶尔出现冲突解决的问题

Forge 1.20.1

on 2026 Apr 25
下载

v4.7.1.1

  • 修复了一些错误的物品堆叠比较,这些问题曾导致卡顿/异常(#689)

NeoForge 1.21.1

on 2026 Apr 25
下载

Forge 1.21.1

on 2026 Apr 25
下载

v4.7.5.1

  • 移除样条插值中的帧外推

NeoForge 1.21.1

on 2026 Apr 25
下载

Forge 1.21.1

on 2026 Apr 25
下载

v4.7.5

  • 重新处理无效的动画关键帧。优雅地成功处理,而非直接失败
  • 新增 query.controller_speed Molang 查询
  • 移除 GeoModel 中 getTextureResource 和 getModelResource 的 forRemoval 弃用标记
1
2
3
22
BBSMC Logo

中国最活跃的 Minecraft 中文资源社区

QQ 群:1078515449

资源

模组整合包光影资源包地图

社区

汉化软件插件数据包

帮助

服务条款隐私政策社区规则开源代码
设置

"Minecraft"以及"我的世界"为美国微软公司的商标,本站与微软公司没有从属关系。 本站与 Modrinth 无从属关系,网站遵循 LGPL 协议开源。

© 2019-2026 青岛柒兮网络科技有限公司 | 鲁B2-20210590 | 鲁ICP备2021009459号-12 | 公安备案 鲁公网安备37021002001586号