Перейти к содержимому
Mineforgian

Geckolib

A 3D animation library for entities, blocks, items, armor, and more!

Загрузки
66.7M
Подписчики
3K
Обновлён
30 августа 2026 г.
Лицензия
MIT

Опубликован 7 августа 2022 г.

logo

discord patreon

GeckoLib is an animation and rendering engine for Minecraft Mods, with support for complex 3D keyframe-based animations, 30+ easings, concurrent animation support, sound and particle keyframes, event keyframes, and more. Available for Forge, Fabric, and NeoForge

Installation

You can view installation instructions for modders here.

For non-modders, just download the mod and put it in your mods folder like normal.

Documentation

GeckoLib provides detailed documentation in the form of a wiki. We spent many hours writing the wiki, so please read it!

Support

If you have questions or need help getting up and running with questions, join our discord!

Contributing Pull requests are welcome. For significant changes, please open an issue first to discuss what you would like to change.License logo

Sponsored by BisectHosting

Need a server to play with friends? Don't know how to setup one? Just rent an already configured server from BisectHosting!

Bisect Hosting

Click on the picture above, select plan(at least 4GB), and use my code gecko to get 25% off your first month and enjoy playing with your friends!

Ченджлог

5.5.4Релиз26.2 · 30 августа 2026 г.

GeckoLib v5.5.4

Bug Fixes

  • Fixed query.life_time being negatively inverted
  • Prevented GeckoLib crashing if attempting to animate with an empty animation
  • Fixed GeckoLib crashing on newer NeoForge versions
  • Fixed GeckoLib crashing when attempting to send a default RawAnimation over network
  • Fixed GeckoLib not evaluating nested ternary expressions properly
  • Fixed DieRollIntegerFunction giving the wrong name when asked
  • Fixed a crash caused by serverbound GeckoLib packets (we don't have any at the moment anyway, but still)
  • Fixed NeoForge's entity RenderState extensions being ignored by GeckoLib
  • Prevent GeckoLib crashing if attempting to retrieve an incorrectly typed DataTicket
  • Fixed left-handed GeckoLib entities using first-person render context for third person offhand items
  • Fixed uppercase Molang queries not being recognised by animations
  • Fixed various whitespace issues with Molang expression parsing
  • Fixed single-element vector arrays in Molang expressions erroring out
  • Fixed custom GeckoLib resource loaders disabling themselves
  • Fixed GeckoLib resource loading crashing out if a mod has both a suffixed GeckoLib resource file and a non-suffixed one with the same name
  • Fixed synced singleton animatables (mostly items) colliding with another in very rare occasions
  • Fixed RawAnimation not necessarily comparing as equal in very rare occasions
  • Fixed RawAnimation.Stage not necessarily comparing as equal in very rare occasions
  • Fixed KeyFrameData not necessarily comparing as equal in very rare occasions
  • Fixed the RawAnimation#thenWait waiting 20x too long
  • Fixed easeinquint not being quint
  • Fixed AnimationController#hasAnimationFinished not working properly
  • Fixed a potential collision or crash caused by multithreaded handling of animation parsing or modloading
  • Fixed a potential crash from reloading resources with GeckoLib animated textures present
  • Added some safety checks for ItemArmorGeoLayer to prevent crashes/errors from invalid setups
  • Fixed DyeableGeoArmorRenderer rendering bones at the wrong location
  • Fixed GeckoLib crashing the entire game if a mod attempts to animate something in an invalid way
  • Fixed animations with out-of-order animation keyframes not being sorted when loading in
  • Fixed a potential multi-threading crash or corruption from SyncedSingletonAnimatableCache
  • Fixed a potential crash caused by unexpected values in DieRollIntegerFunction and RandomIntegerFunction
  • Fixed SyncedSingletonAnimatableCache acting as a slow-burning memory leak by retaining every id indefinitely
  • Fixed Molang expressions with empty groups '()' erroring out with little information when parsing
  • Fixed top-level bones with locators throwing an error for each one on load
  • Fixed GeckoLib's resource loading incorrectly telling Minecraft to move it on-thread before it's done
  • Fixed multi-stage animations with a transition time not transitioning properly
  • Fixed math.atan, math.acos, and math.asin calculating tiny values and being wrong
  • Some rendering performance improvements
  • Fixed GeckoLib clients requiring NeoForge servers to also have GeckoLib installed
  • Fixed variable assignments in Molang not parsing properly if accompanied by a tenary or sub-expression
  • Added operator symbol aliases for && and || - although the bedrock spec doesn't support this technically
  • Fixed negative math function results not parsing properly in molang
  • Fixed some higher-level molang operators having completely incorrect precedence indexes
  • Fixed some other molang parsing issues
  • Misc cleanup
5.5.4Релиз26.2 · 30 августа 2026 г.

GeckoLib v5.5.4

Bug Fixes

  • Fixed query.life_time being negatively inverted
  • Prevented GeckoLib crashing if attempting to animate with an empty animation
  • Fixed GeckoLib crashing on newer NeoForge versions
  • Fixed GeckoLib crashing when attempting to send a default RawAnimation over network
  • Fixed GeckoLib not evaluating nested ternary expressions properly
  • Fixed DieRollIntegerFunction giving the wrong name when asked
  • Fixed a crash caused by serverbound GeckoLib packets (we don't have any at the moment anyway, but still)
  • Fixed NeoForge's entity RenderState extensions being ignored by GeckoLib
  • Prevent GeckoLib crashing if attempting to retrieve an incorrectly typed DataTicket
  • Fixed left-handed GeckoLib entities using first-person render context for third person offhand items
  • Fixed uppercase Molang queries not being recognised by animations
  • Fixed various whitespace issues with Molang expression parsing
  • Fixed single-element vector arrays in Molang expressions erroring out
  • Fixed custom GeckoLib resource loaders disabling themselves
  • Fixed GeckoLib resource loading crashing out if a mod has both a suffixed GeckoLib resource file and a non-suffixed one with the same name
  • Fixed synced singleton animatables (mostly items) colliding with another in very rare occasions
  • Fixed RawAnimation not necessarily comparing as equal in very rare occasions
  • Fixed RawAnimation.Stage not necessarily comparing as equal in very rare occasions
  • Fixed KeyFrameData not necessarily comparing as equal in very rare occasions
  • Fixed the RawAnimation#thenWait waiting 20x too long
  • Fixed easeinquint not being quint
  • Fixed AnimationController#hasAnimationFinished not working properly
  • Fixed a potential collision or crash caused by multithreaded handling of animation parsing or modloading
  • Fixed a potential crash from reloading resources with GeckoLib animated textures present
  • Added some safety checks for ItemArmorGeoLayer to prevent crashes/errors from invalid setups
  • Fixed DyeableGeoArmorRenderer rendering bones at the wrong location
  • Fixed GeckoLib crashing the entire game if a mod attempts to animate something in an invalid way
  • Fixed animations with out-of-order animation keyframes not being sorted when loading in
  • Fixed a potential multi-threading crash or corruption from SyncedSingletonAnimatableCache
  • Fixed a potential crash caused by unexpected values in DieRollIntegerFunction and RandomIntegerFunction
  • Fixed SyncedSingletonAnimatableCache acting as a slow-burning memory leak by retaining every id indefinitely
  • Fixed Molang expressions with empty groups '()' erroring out with little information when parsing
  • Fixed top-level bones with locators throwing an error for each one on load
  • Fixed GeckoLib's resource loading incorrectly telling Minecraft to move it on-thread before it's done
  • Fixed multi-stage animations with a transition time not transitioning properly
  • Fixed math.atan, math.acos, and math.asin calculating tiny values and being wrong
  • Some rendering performance improvements
  • Fixed GeckoLib clients requiring NeoForge servers to also have GeckoLib installed
  • Fixed variable assignments in Molang not parsing properly if accompanied by a tenary or sub-expression
  • Added operator symbol aliases for && and || - although the bedrock spec doesn't support this technically
  • Fixed negative math function results not parsing properly in molang
  • Fixed some higher-level molang operators having completely incorrect precedence indexes
  • Fixed some other molang parsing issues
  • Misc cleanup
5.5.4Релиз26.2 · 30 августа 2026 г.

GeckoLib v5.5.4

Bug Fixes

  • Fixed query.life_time being negatively inverted
  • Prevented GeckoLib crashing if attempting to animate with an empty animation
  • Fixed GeckoLib crashing on newer NeoForge versions
  • Fixed GeckoLib crashing when attempting to send a default RawAnimation over network
  • Fixed GeckoLib not evaluating nested ternary expressions properly
  • Fixed DieRollIntegerFunction giving the wrong name when asked
  • Fixed a crash caused by serverbound GeckoLib packets (we don't have any at the moment anyway, but still)
  • Fixed NeoForge's entity RenderState extensions being ignored by GeckoLib
  • Prevent GeckoLib crashing if attempting to retrieve an incorrectly typed DataTicket
  • Fixed left-handed GeckoLib entities using first-person render context for third person offhand items
  • Fixed uppercase Molang queries not being recognised by animations
  • Fixed various whitespace issues with Molang expression parsing
  • Fixed single-element vector arrays in Molang expressions erroring out
  • Fixed custom GeckoLib resource loaders disabling themselves
  • Fixed GeckoLib resource loading crashing out if a mod has both a suffixed GeckoLib resource file and a non-suffixed one with the same name
  • Fixed synced singleton animatables (mostly items) colliding with another in very rare occasions
  • Fixed RawAnimation not necessarily comparing as equal in very rare occasions
  • Fixed RawAnimation.Stage not necessarily comparing as equal in very rare occasions
  • Fixed KeyFrameData not necessarily comparing as equal in very rare occasions
  • Fixed the RawAnimation#thenWait waiting 20x too long
  • Fixed easeinquint not being quint
  • Fixed AnimationController#hasAnimationFinished not working properly
  • Fixed a potential collision or crash caused by multithreaded handling of animation parsing or modloading
  • Fixed a potential crash from reloading resources with GeckoLib animated textures present
  • Added some safety checks for ItemArmorGeoLayer to prevent crashes/errors from invalid setups
  • Fixed DyeableGeoArmorRenderer rendering bones at the wrong location
  • Fixed GeckoLib crashing the entire game if a mod attempts to animate something in an invalid way
  • Fixed animations with out-of-order animation keyframes not being sorted when loading in
  • Fixed a potential multi-threading crash or corruption from SyncedSingletonAnimatableCache
  • Fixed a potential crash caused by unexpected values in DieRollIntegerFunction and RandomIntegerFunction
  • Fixed SyncedSingletonAnimatableCache acting as a slow-burning memory leak by retaining every id indefinitely
  • Fixed Molang expressions with empty groups '()' erroring out with little information when parsing
  • Fixed top-level bones with locators throwing an error for each one on load
  • Fixed GeckoLib's resource loading incorrectly telling Minecraft to move it on-thread before it's done
  • Fixed multi-stage animations with a transition time not transitioning properly
  • Fixed math.atan, math.acos, and math.asin calculating tiny values and being wrong
  • Some rendering performance improvements
  • Fixed GeckoLib clients requiring NeoForge servers to also have GeckoLib installed
  • Fixed variable assignments in Molang not parsing properly if accompanied by a tenary or sub-expression
  • Added operator symbol aliases for && and || - although the bedrock spec doesn't support this technically
  • Fixed negative math function results not parsing properly in molang
  • Fixed some higher-level molang operators having completely incorrect precedence indexes
  • Fixed some other molang parsing issues
  • Misc cleanup
4.9.2Релиз1.21.1 · 1 июля 2026 г.

v4.9.2

  • Fixed GeckoLib passing the wrong partialTick to GeoRenderLayer#preRender (#877)
4.9.2Релиз1.21.1 · 1 июля 2026 г.

v4.9.2

  • Fixed GeckoLib passing the wrong partialTick to GeoRenderLayer#preRender (#877)
4.9.2Релиз1.21.1 · 1 июля 2026 г.

v4.9.2

  • Fixed GeckoLib passing the wrong partialTick to GeoRenderLayer#preRender (#877)
5.5.3Релиз26.2 · 27 июня 2026 г.

GeckoLib v5.5.3

Bug Fixes

  • Did another fix for the vanilla armour rotations on GeckoLib entities via ItemArmorGeoLayer. This one should be the last one
5.5.3Релиз26.2 · 27 июня 2026 г.

GeckoLib v5.5.3

Bug Fixes

  • Did another fix for the vanilla armour rotations on GeckoLib entities via ItemArmorGeoLayer. This one should be the last one

Комментарии

Загружаем…