
Geckolib
A 3D animation library for entities, blocks, items, armor, and more!
25.0M
2.2K
Список изменений
GeckoLib v5.3-alpha-3
Alpha 3 Notes:
- Fixed a crash on world load (#776)
- More internal changes around armour rendering and ItemArmorGeoLayer
- Sorry to say, there's more API changes coming in the next version :(
Alpha 2 Notes:
- Fix Forge crashing on load on newer Forge versions (#773)
- Fix GeoArmorRenderer crashing when not rendering a full set (#771)
- BlockAndItemGeoLayer#renderStackForBoneand- #renderBlockForBonerenamed to- #submitItemStackRenderand- #submitBlockRenderrespectively
- Moved the OBJECT_RENDER_POSEandMODEL_RENDER_POSEDataTickets to the baseGeoRenderer, so that subclasses do not need to handle them in overrides
- Fixed only handling 1 PerBoneRenderTaskperGeoBone
- Added GeoBone#transformToBone
- Split PerBoneRendertasks out intoGeoRenderer#submitPerBoneRenderTasks
- Removed the skipPerBoneTasksin severalGeoRenderermethod calls as it is no longer needed
- Created PerBoneRenderTasksfor neatly handling per-bone render tasks given their added complexity
- Restricted GeoArmorLayer's generic type to require anAvatarRenderState, as that is the actual type required by the models used
- Added RenderStateUtil
Changes
- Port to 1.21.10
- NOTE: This is an ALPHA build, and may be subject to breaking changes until the alpha tag is removed.
- The PACKED_LIGHT DataTicket is no longer filled for most GeoRenderers, as the base RenderState classes contain lightCoordsnow by default
- Added GeoRenderState#getPackedLight
- GeoRenderer#defaultRenderhas been renamed to- #submitRenderTasksto better represent its function now that we're not actually rendering at the time of that call
- GeoRenderer#actuallyRenderhas been renamed to- #buildRenderTaskto better represent its function
- GeoLayer#renderhas been renamed to- #buildRenderTaskto better represent its function
- GeoRenderer#reRenderhas been removed. Instead, render layers or renderers should submit another render task via- GeoRenderer#buildRenderTask. Consequently, you no longer need to check for- isReRenderin renderer methods
- preRender,- scaleModelForRender, and- adjustPositionForRenderhave all been moved to after the preRender event check
- Added GeoRenderer#createRenderState
- Removed GeoEntityRenderer#createBaseRenderState- Use#createRenderStateinstead
- Removed various DataTickets from the default setup, where they're just a blatant clone of existing vanilla properties, to eliminate multiple sources of truth and improve performance
- The various Matrix4f variables in GeckoLib renderers has been moved to DataTickets
- Removed GeoRenderer#doPostRenderCleanup
- Added the associated HumanoidModel to GeoArmorLayer.RenderData
- Added RenderModelPositioner
 
- Rewrote GeoArmorRenderer- it should now be significantly easier to use and understand
- Change DefaultedEntityGeoModel to take a customisable bone name instead of a flat boolean
- Added #withRenderLayerto the variousGeoRenderers to allow for a functional instantiation
- GeoObjectRenderernow uses a generic for its- GeoRenderState, allowing for generic extensibility
- Directly pass the partialTick to GeoRenderer#addRenderData,GeoRenderLayer#addRenderData,GeoModel#prepareForRenderPass, and the variousCompileRenderStateevents/hooks (#762)
- Renamed GeoRenderer#adjustPositionForRenderto#adjustRenderPoseto better reflect its intended usage
- ItemArmorGeoLayer.RenderDatanow uses- GeoArmorRenderer.ArmorSegments instead of manual slots and part getters
- Made GeoRenderEventand its various sub-events multiloader compatible
- All platform-specific GeckoLib events are now split into their own individual classes to make it easier to find and manage them. E.G. CompileBlockRenderLayersEvent
Additions
- Added "Stateless" animatables. These are an alternate way of handling animations for GeckoLib animatables.
- See: https://github.com/bernie-g/geckolib/wiki/Stateless-Animatable-Handling-(Geckolib5)
- Added:
- StatelessGeoBlockEntity
- StatelessGeoEntity
- StatelessGeoObject
- StatelessGeoReplacedEntity
- StatelessGeoSingletonAnimatable
- StatelessAnimationController
 
 
- Added attack.punchDefaultAnimation constant
- Added misc.idle.flyingDefaultAnimation constant
- Added move.diveDefaultAnimation constant
- Added DefaultAnimations#triggerOnlyControllerfor creating a controller specifically for arbitrary triggered animations
- Added RawAnimation#getStageCount
- Added AnimationController#getStateHandler
- Added DefaultAnimations#genericWalkFlyIdleController
- Added a constructor overload for various GeckoLib renderers that takes the item directly and creates a defaulted instance using the object's registered ID for quick and easy handling
- E.G. new GeoEntityRenderer(ModEntities.MY_ENTITY);
 
- E.G. 
- Added GeoRenderEvent#hasData
- Added RenderUtil#getReplacedEntityRenderer
- Added RenderUtil#getGeckoLibItemRenderer
- Added RenderUtil#getGeckoLibEntityRenderer
- Added RenderUtil#getGeckoLibBlockRenderer
- Added RenderUtil#getGeckoLibArmorRenderer
Bug Fixes
- Add double-depth bedrock keyframe parsing because I have no idea why Blockbench is exporting that
- Fixed triggered animations not visually working on brand-new stacks in multiplayer for other players
- Fixed some incorrect javadocs in AnimationController
- Ensure the EntityRenderStateis properly extracted before passing toGeoArmorRendererfor extraction
Internal Changes
- Reorganised GeckoLib's packets into folders
- Added a StreamCodec implementation for Animation.Stage
- Added a StreamCodec implementation for RawAnimation
- Added javadocs to more internal methods and all of the mixins, for clarity
- Improved the Javadoc on GeoRenderEvent#getRenderData
- Removed RenderUtil#getCurrentSystemTick
- Removed RenderUtil#booleanToFloat
- Removed RenderUtil#getGeoModelForEntityType
- Removed RenderUtil#getGeoModelForEntity
- Removed RenderUtil#getGeoModelForItem
- Removed RenderUtil#getGeoModelForBlock
- Removed RenderUtil#getGeoModelForArmor
- Moved RenderUtil#getCurrentTicktoClientUtil
- Moved RenderUtil#arrayToVectoJsonUtil
- Removed some superfluous parameters from GeoRenderProvider#getGeoArmorRenderer
- Renamed ItemArmorGeoLayer#prepHumanoidModelForRenderto#positionModelPartFromBone
Файлы
geckolib-neoforge-1.21.10-5.3-alpha-3.jar(681.07 KiB)
ОсновнойМетаданные
Канал релиза
Release
Номер версии
5.3-alpha-3
Загрузчики
NeoForge
Версии игры
1.21.10
Загрузок
136
Дата публикации
вчера