Unofficial site, not affiliated with modrinth.com.What is this?
Моды/Geckolib
Geckolib

Geckolib

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

52.2M
3.0K
  • NeoForge 26.1.2-5.5.1

    release12 апреля 2026 г.

    GeckoLib v5.5.1

    Changes

    API

    • Added CustomBoneTextureGeoLayer#shouldRenderBone to allow for handling of custom-hidden bones

    Bug Fixes

    • Fix query.limb_swing not interpolating correctly (#834)
  • Fabric 26.1.2-5.5.1

    release12 апреля 2026 г.

    GeckoLib v5.5.1

    Changes

    API

    • Added CustomBoneTextureGeoLayer#shouldRenderBone to allow for handling of custom-hidden bones

    Bug Fixes

    • Fix query.limb_swing not interpolating correctly (#834)
  • NeoForge 26.1-5.5

    release24 марта 2026 г.

    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!
  • Fabric 26.1-5.5

    release24 марта 2026 г.

    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!
  • NeoForge 1.21.1

    release3 марта 2026 г.

    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)
  • Forge 1.21.1

    release3 марта 2026 г.

    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)
  • Fabric 1.21.1

    release3 марта 2026 г.

    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)
  • NeoForge 1.21.11-5.4.5

    release3 марта 2026 г.

    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
  • Forge 1.21.11-5.4.5

    release3 марта 2026 г.

    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
  • Fabric 1.21.11-5.4.5

    release3 марта 2026 г.

    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
  • NeoForge 1.21.11-5.4.4

    release27 февраля 2026 г.

    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.21.11-5.4.4

    release27 февраля 2026 г.

    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
  • Fabric 1.21.11-5.4.4

    release27 февраля 2026 г.

    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

    release31 января 2026 г.

    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
  • Fabric 1.20.1

    release31 января 2026 г.

    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
  • NeoForge 1.21.11-5.4.3

    release28 января 2026 г.

    GeckoLib v5.4.3

    Additions

    • Added RenderUtil#prepMatrixForBoneAndUpdateListeners
    • Added RenderUtil#addPosToMatrix

    Bug Fixes

    • Fixed Bone Position Listeners not getting the right positions
  • Forge 1.21.11-5.4.3

    release28 января 2026 г.

    GeckoLib v5.4.3

    Additions

    • Added RenderUtil#prepMatrixForBoneAndUpdateListeners
    • Added RenderUtil#addPosToMatrix

    Bug Fixes

    • Fixed Bone Position Listeners not getting the right positions
  • Fabric 1.21.11-5.4.3

    release28 января 2026 г.

    GeckoLib v5.4.3

    Additions

    • Added RenderUtil#prepMatrixForBoneAndUpdateListeners
    • Added RenderUtil#addPosToMatrix

    Bug Fixes

    • Fixed Bone Position Listeners not getting the right positions
  • NeoForge 1.21.11-5.4.2

    release11 января 2026 г.

    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)
  • Forge 1.21.11-5.4.2

    release11 января 2026 г.

    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)
1
...

Сведения

Лицензия:
Опубликован:3 года назад
Обновлён:2 месяца назад
ID проекта:
Главная