玩家动画核心

玩家动画核心

一个用于非冲突玩家动画的NeoForge库。分层动画堆栈、Molang支持、第一人称模型渲染以及用于模组集成的简单API。多个模组可以同时为玩家制作动画。

🎬 Player Animation Core

基于关键帧的 NeoForge 动画库 — 为 Minecraft 中的自定义玩家动画提供支持。


✨ 概述

Player Animation Core (PAC) 是一个针对 NeoForge 的模组库,为玩家模型提供灵活、分层的动画系统。它为诸如 Dinamyc Combat 之类的模组提供自定义动画支持,允许实现流畅、基于关键帧的战斗、移动等动画,并完全支持第一人称视角。


🎯 特性

🎞️ 关键帧动画系统

使用类似 GeckoLib 的关键帧在 JSON 中定义动画。完全控制骨骼变换:每个关键帧的位置、旋转、缩放,并支持可配置的缓动效果。

🧩 分层动画叠加

多个动画可同时运行,并具有优先级分层。更高优先级的动画会逐骨骼覆盖较低优先级的动画,从而实现行走与攻击等复杂混合。

👁️ 四种第一人称模式

THIRD_PERSON_MODEL — 在第一人称视角下渲染完整的 3D 玩家模型,并可配置部位可见性。
HANDS_ONLY — 物品骨骼变换应用于原版第一人称手上的物品。
HANDS_ONLY_ARM — 手臂骨骼旋转(可配置缩放)应用于原版第一人称物品渲染。无需额外关键帧即可匹配第三人称手臂摆动。
VANILLA — 标准的 Minecraft 第一人称视角。

⚙️ FirstPersonConfiguration

控制每段动画的手臂、物品和盔甲的可见性。可配置手臂旋转缩放、手臂长度和俯仰系数,用于按武器进行微调。

🦴 骨骼变换 API

查询并对任何身体部位应用变换:头部、躯干、手臂、腿部、右手/左手物品。使用 MirrorIfLeftHandModifier 自动镜像动画,以支持左手渲染。

📦 轻量级

设计为一个库 — 本身不会有任何视觉变化。仅当其他模组触发动画时才会影响渲染。是战斗、跑酷、表情或任何动画模组的完美依赖。


📋 需求

Minecraft 26.1.2
NeoForge 26.1.2.78+

🎮 模组开发人员

在 build.gradle 中将 PAC 添加为依赖:

repositories {
    maven {
        url "https://gitlab.com/api/v4/projects/stalking-dragons/minecraft/player-animation-core/packages/maven"
    }
}

dependencies {
    implementation "com.skd:player_animation_core:0.0.0-beta.21"
}

注册一个动画工厂:

PlayerAnimationFactory.ANIMATION_DATA_FACTORY.registerFactory(
    Identifier.of("yourmod", "combat"), 1000, YourController::new);

触发动画:

var layer = PlayerAnimationAccess.getPlayerAnimationLayer(avatar, FACTORY_ID);
if (layer instanceof PlayerAnimationController controller) {
    controller.triggerAnimation(animId);
}

覆盖第一人称配置:

@Override
public FirstPersonMode getFirstPersonMode() {
    return FirstPersonMode.HANDS_ONLY_ARM;
}

@Override
public FirstPersonConfiguration getFirstPersonConfiguration() {
    return new FirstPersonConfiguration()
        .setArmRotationScale(1.0f)
        .setShowArmor(true);
}

有关详细信息,请参阅完整 API 参考。


🔧 兼容模组

Dinamyc Combat — 具有第一人称支持的自定义武器攻击动画。
你的模组可以在这里 —— PAC 专为集成而设计。


🙏 鸣谢

基于 Kosmx 制作的 Player Animation Lib。
由 Stalking Dragons 移植并扩展至 NeoForge 26.1.2。



Codex Stalking Dragons
https://codex.skdragons.com/
Codex Stalking Dragons — Minecraft 模组开发