nineMinecraft is a joke site.
nineMinecraft is in no way affiliated with Modrinth or 9minecraft.
Filter loader...
Filter versions...
Filter channels...

Fabric 26.1-5.5

by Tslat on Mar 24, 2026
Download

GeckoLib v5.5

  • Port to 26.1

Changes

API

  • Refactored the base packages of GeckoLib from software.bernie.geckolib to com.geckolib
  • Added GeoLocator - A object implementation for locators. They are only used for listening to render positions
    • Added BakedGeoModel#getLocator and BakedGeoModel#locators
    • Added GeoBone#locators
    • Added RenderPassUtil#addLocatorPositionListener
    • Extracted GeoBone#updateBonePositionListeners to RenderUtil#providePositionsToListeners
  • Modified GeckoLib's resource loading to allow for completely custom resource formats
    • Gives root-level access to Resource instances. Write an adapter to read resource files from any format you want!
    • Changed GeckoLibLoader from an SPI to a registerable interface
    • Added GeckoLibUtil#addResourceLoader
    • Removed GeckoLibUtil#addCustomBakedModelFactory
    • Converted BakedGeoModel to a non-record, extendable class, for potential third-party adapters
    • Converted Animation to a non-record, extendable class, for potential third-party adapters
    • Converted ModelProperties to a non-record, extendable class, for potential third-party adapters
    • Converted MathParser back to an instantiable object to allow for extensible implementations, added a deduplication schema to it, and performed a general cleanup
    • Improved the deduplication schema for MathParser, further reducing memory consumption
    • Removed BakedAnimationsAdapter and KeyFrameMarkersAdapter
    • Removed the legacy loading objects:
      • Bone
      • Cube
      • FaceUV
      • LocatorClass
      • LocatorValue
      • MinecraftGeometry
      • Model
      • PolyMesh
      • PolysUnion
      • TextureMesh
      • UVFaces
      • UVUnion
      • BoneStructure
      • GeometryTree
      • Moved ModelProperties to geckolib.cache.model
      • Moved BakedAnimations to geckolib.cache.animation
  • Cleaned up EasingType
    • Added a zero-parameter factory constructor to EasingType and in GeckoLibUtil
    • Added EasingState#interpolate
    • Added EasingState#getFirstEasingArg
    • Added EasingType#modifyKeyframes
    • Changed EasingType#register to return a generic type instead of EasingType
    • Removed EasingType#easeIn
    • Removed EasingType#lerpWithOverride
    • Removed EasingType#fromJson
  • Added BakedAnimationCache#size and BakedModelCache#size
  • Added the .json resource path to BakedGeoModel's ModelProperties
  • Removed GeoReplacedEntity#getReplacingEntityType as it was no longer used
  • Converted all Javadocs to Markdown format
  • Folded internal implementation methods in BakedGeoModel and GeoBone for API visibility
  • Removed the class parameter for TokenType-based DataTickets, and properly typed the builtin GeckoLib tickets
  • Removed MiscUtil#WORLD_TO_MODEL_SIZE
  • Removed MiscUtil#MODEL_TO_WORLD_SIZE
  • Added JsonUtil#worldToModelUnits and JsonUtil#modelToWorldUnits
  • Removed the dual-type generics for renderstates from:
    • DirectionalProjectileRenderer
    • DyeableGeoArmorRenderer
    • GeoArmorRenderer
    • GeoBlockRenderer
    • GeoEntityRenderer
    • GeoReplacedEntityRenderer
  • Moved ModelFormatVersion to com.geckolib.loading.definition.geometry.object
  • Renamed Rotation to UvFaceRotation and moved to com.geckolib.loading.definition.geometry.object
  • Removed headBone and its associated constructor in DefaultedEntityGeoModel since it's no longer used
  • Added direct-object constructors for DefaultedBlockGeoModel, DefaultedEntityGeoModel, and DefaultedItemGeoModel
  • Removed GeckoLibPlatform#getGameDir as it is no longer used
  • Removed SerializableDataTickets. They haven't had a place in GeckoLib since early 1.21.x versions, and they've always had unresolvable implementation issues.
  • Added VanillaModelModifier - This is mostly an internal implementation class to bridge a gap that vanilla's implementation left us
  • Fixed and renabled ItemArmorGeoLayer, added support for non-Equippable items
  • GeoRenderer#performRenderPass now supports multiple pre-made BoneUpdaters when starting a render pass
  • Converted some BlockState and ItemStack references in rendering to ItemStackRenderState and BlockModelRenderState per Minecraft standards
    • Vanilla hasn't yet set the systems in place for this to be everywhere, so I'm just doing it where I can
    • Added RenderUtil#createRenderStateForItem
    • Added RenderUtil#createRenderStateForBlock
  • Added DataTickets#create as a shortcut/helper method for creating DataTickets
  • Changed DataTicket.GLOW_COLOUR to DataTicket.OUTLINE_COLOR
  • Moved DataTicket.BLOCK_FACING to GeoBlockRenderer.DIRECTION_FACING
  • Moved DataTicket.ITEM to GeoItemRenderer.CURRENT_ITEM
  • Moved DataTicket.EQUIPMENT_SLOT to GeoArmorRenderer.CURRENT_SLOT
  • Moved DataTicket.IS_GECKOLIB_WEARER to GeoArmorRenderer.IS_GECKOLIB_WEARER
  • Moved DataTicket.HUMANOID_MODEL to GeoArmorRenderer.BASE_MODEL
  • Added BlockEntityRendererProvider.Context to the constructor of GeoBlockRenderer

Other

  • Added 1.16.0 and 1.19.30 to the known geometry model definitions
  • Improved resource loading performance
  • Added an interface injection for BlockEntityRenderState -> GeoRenderState
  • GeckoLib will no longer crash when unable to find a model; and will instead render a missing texture cube

Bug Fixes

  • Fixed RenderUtil#transformToBone running in reverse order
  • Fixed AnimationController having the wrong InternalApi annotations
  • Fixed top-level bones not always providing the correct position to BonePositionListeners
  • Fixed GeckoLib model bones not rendering in the correct order when nested under parent bones
  • Fixed GeckoLib model loading not respecting mirror and inflate values properly
  • Reduced backface z-fighting on 0-depth cubes. Stop making your cubes 0-thickness!

Forge 1.21.1

by Tslat on Mar 3, 2026
Download

Fabric 1.21.1

by Tslat on Mar 3, 2026
Download

v4.8.4

  • Prevent crashing from an empty molang string
  • Fixed Molang calculations sometimes parsing math incorrectly (#820)
  • Fixed MathParser not parsing group negatives properly (#820)

GeckoLib v5.4.5

Bug Fixes

  • Fixed animations transitioning to themselves when finishing sometimes
  • Fixed CustomBoneTextureGeoLayer not rendering in the correct position
  • Fixed MathParser not parsing group negatives properly

GeckoLib v5.4.4

Changes

API

  • Added RenderPassInfo#getPreRenderMatrixPose and RenderPassInfo#getModelRenderMatrixPose, capturing the entire PoseStack pose instead of just the matrix pose itself
  • Added OverridingDataTicket - A DataTicket implementation that defers to an existing RenderState field first before applying itself.
    • This allows for capturing RenderState field values that may be modified by vanilla or other mods after extraction by the renderer (Fixes #818)

Bug Fixes

  • Fixed looping animations sometimes causing vanishing entities
  • Fixed GeckoLib failing to load an animation with an empty string as the keyframe
  • Fixed RenderUtil#transformToBone manipulating the PoseStack in reverse (#819)
  • Fixed RenderUtil#transformToBone not accounting for back-translating to the pivot point (#822)
  • Fixed MathParser sometimes parsing mathmematical expressions incorrectly (#820)
  • Fixed GeoItems sometimes having their id collide if not registered as a synced animatable
  • Fixed some animations replaying the last few frames of their animation occasionally under very specific circumstances

Forge 1.20.1

by Tslat on Jan 31, 2026
Download

Fabric 1.20.1

by Tslat on Jan 31, 2026
Download

v4.8.3

  • Fix GeckoLib not knowing what math.pi is and breaking animations (??? How has no-one told me about this until now)
  • Add incompatibility with geckoanimfix since the author refuses to remove the mod even though it breaks Geckolib and actually does nothing at all

GeckoLib v5.4.3

Additions

  • Added RenderUtil#prepMatrixForBoneAndUpdateListeners
  • Added RenderUtil#addPosToMatrix

Bug Fixes

  • Fixed Bone Position Listeners not getting the right positions

GeckoLib v5.4.2

Additions

  • Added a bone name based equivalent of RenderPassInfo#addBonePositionListener
  • Added transitive interface injections for Common, NeoForge, and Fabric
  • Added a TypeToken alternative to classes for DataTickets, to allow for generic-typed DataTickets

Bug Fixes

  • Fixed a bug causing the first keyframe of animations to be skipped entirely (#807, #805)
  • Fixed hold on last frame loop type not working (#806)

External resources



Project members

DerToaster98

Contributor

mchorse

Contributor

KyoSleep

Contributor

Gecko

Owner

ZigyTheBird

Member

Tslat

Maintainer


Technical information

License
MIT
Client side
required
Server side
optional
Project ID
Expand Down