# 资源说明 · Animation 动画与动作资源。每条包含:路径、简要说明。 | 资源路径 | 简要说明 | | --- | --- | | `Tools/output/mixamo/Male/*.fbx` | Mixamo 男骨架(Y Bot)基础动作中间件,FBX for Unity / Without Skin / 30fps。含 Idle、Walking、Running、Punching、Kick(Kicking)、SwordSlash(Stable Sword Outward Slash)、HitReaction、FallingFlatImpact。脚本:`Tools/download_mixamo_anims.py`。未入库 Bundles。 | | `Tools/output/mixamo/Female/*.fbx` | Mixamo 女骨架(X Bot)同套动作,导出设置同上。未入库 Bundles。 | | `Tools/output/mixamo/manifest.json` | 上述 16 个 FBX 的下载清单。 | | `Tools/dgx3d_animal_pipeline.py` | 非人:已验收 FBX/GLB → TokenRig + UniMate Idle/Walk/Attack(不重做 DGX 模);`--caps-only` 门禁 | | `Tools/install_animal_rigged.py` | 将 pipeline 产物拷入 `Characters/Animal/{Name}/Rigged` 与 `Anims` | | `AIClient/AgentScripts/SetupAnimalAnimator.cs` | Generic Animator;Motion Int 0=Idle/1=Walk,Attack Trigger单次攻击;样例 `SetupRockBall`,正式敌方由配方入口调用 | | `Tools/output/{name}_dgx/` | DGX 非人中间件(rigged_fbx / anims,不进 Bundle) | | `Tools/output/rockball_dgx/` | 岩团团中间件;旧 `3cead72a` 19骨代理与验收低模空间不一致,已停用;当前采用同角色 `high_rig/rigged.glb` 12骨和 `walk_verified/` 单Walk验证 | | `…/RockBall_Rigged.fbx` | TokenRig 绑骨 FBX(减面约 2k) | | `…/anims/RockBall_{Idle,Walk,Attack}.fbx` | UniMate 三动作;入库后见 Bundles | | `AIClient/Assets/Bundles/Characters/Animal/RockBall/Anims/RockBall_Idle.fbx` | 2026-10-20:同角色12骨专用UniMate Idle原始源动作,已替换旧19骨来源;任务 `aigame_idle_54f85e5750484ecca7d8eaf439a02f77` | | `…/RockBall_Walk.fbx` | 2026-10-20:同角色12骨重新生成的双足直立Walk原始剪辑;未做脚底与循环修正的源数据 | | `…/RockBall_Attack.fbx` | 2026-10-20:同角色12骨专用UniMate Attack原始源动作,已替换旧19骨;任务 `aigame_attack_40bc28cae3d24ad0bd737fae1eb6aafc` | | `…/RockBall_Animator.controller` | 三动作Generic,默认Idle;Motion=0/1、Attack Trigger,支持Idle/Walk进入Attack并恢复请求状态,Root Motion关闭;正式入口 `Tools/enemy_character_pipeline.py` | | `…/Clips/Walk.anim` | 2026-10-20:UniMate原始Walk+离线根骨绑定姿态校准、脚底贴地、周期接缝与短腿交替步幅编辑;1.1秒循环,步幅0.06m、抬脚0.018m;最终播放资产 | | `…/Clips/Idle.anim` | 新12骨源动作+离线呼吸/参考姿态/贴地收尾;1.6秒循环,首尾一致 | | `…/Clips/Attack.anim` | 新12骨源动作+离线蓄力/冲撞/恢复编辑;1秒单次,0.45秒OnEnemyAttackImpact事件,首尾恢复Idle参考 | | `Tools/output/rockball_dgx/walk_verified/motion/` | 本次UniMate原始GLB/FBX、带高模预览、motion.npy、请求记录及日志;明确双足英文提示词,face-right=bone_8、face-left=bone_10;任务 `aigame_walk_89299832de714470b6ed70e5cc837880` | | `Tools/generate_animal_walk.py` | 复用既有骨架生成单Walk;保留英文提示词与明确左右骨,独立远程辅助脚本,不改外部LLM3DGraphics源码 | | `AIClient/AgentScripts/FinalizeAnimalWalk.cs` | 离线烘焙入口;可调strideMeters/liftMeters/cycleSeconds,最终保存.anim,无运行时反向旋转或程序拼动画 | | `AIClient/AgentScripts/VerifyAnimalWalk.cs` | 核验静态形状、61帧蒙皮顶点、根骨倾角、左右脚步幅、循环接缝和Animator连续播放;报告 `Tools/output/rockball_walk_audit/verification.txt` | | `Tools/run_rockball_walk.ps1` | 单Walk可复现入口:默认使用缓存骨架/源动作,重做权重→Pipeline导入→Setup→Finalize→Verify并更新manifest;`-Generate`重新生成源动作,`-BuildReview`重建并排验收场景 | | `Tools/enemy_character_pipeline.py` / `Config/Art/EnemyCharacters/RockBall.json` | 敌方三动作标准入口与样例配方;同rig来源哈希、蒙皮、Pipeline导入、离线收尾、整段QA、Enemy视觉Variant与并排场景 | | `Tools/generate_enemy_motions.py` | 按配方顺序生成指定Idle/Walk/Attack,生成成功后封存源FBX哈希与回执;失败保留旧有效产物 | | `AIClient/AgentScripts/FinalizeEnemyMotions.cs` | 根据配方将Idle与Attack源动作离线编辑为可交付.anim,保存循环、命中事件与恢复参考姿态 | | `AIClient/AgentScripts/VerifyEnemyMotions.cs` | 三动作各121帧实际蒙皮、根姿态、脚底、步幅、接缝、事件、控制器和Play轮播验证 | | `Tools/output/enemy_characters/RockBall/motions/{Idle,Attack}/` | 新UniMate源GLB/FBX、带高模预览GLB、motion.npy、任务日志/回执;同rig哈希62f41bc5…6ca6c0f,与Walk一致 | | `Tools/output/enemy_characters/RockBall/{production_manifest.json,verification.txt,motion_processing.txt,walk_processing.txt}` | 三动作来源、哈希、配方、事件时刻、生产状态与验收报告;生成源+离线编辑,不含运行时骨骼补丁 | ## 火喵 FireCat T1 伙伴三动作(2026-10-20) | 资源路径 | 用途与生成方式 | | --- | --- | | `Tools/output/companions/FireCat/motions/{Idle,Walk,Attack}/` | DGXA UniMate同角色22骨源GLB/FBX、高模预览、npy、回执与日志;rig哈希62a50970…3bea一致。Idle/Walk使用CUDA,Attack首次CUDA内存不足后独立CPU任务成功,未中断其他模型服务。 | | `AIClient/Assets/Bundles/Characters/Animal/FireCat/Anims/FireCat_{Idle,Walk,Attack}.fbx` | Pipeline导入上述三段同rig原始动画;Generic、共享Avatar,保留来源,不直接作最终播放。 | | `AIClient/Assets/Bundles/Characters/Animal/FireCat/Clips/Idle.anim` | 1.6秒循环,源动作8%+离线轻呼吸/贴地/端点绑定姿态;最大形变约0.01596m,根倾角约1.85°。 | | `AIClient/Assets/Bundles/Characters/Animal/FireCat/Clips/Walk.anim` | 1.1秒循环,全骨骼源首帧相对绑定校准、保留35%运动+交替短步/贴地/周期闭合;解决源69.5°根倾斜和坐姿腿偏移,左右步幅约0.06248/0.04547m,根倾角约4.35°。 | | `AIClient/Assets/Bundles/Characters/Animal/FireCat/Clips/Attack.anim` | 1.1秒非循环,源动作12%+双爪75°抬起/小幅前伸的离线施法,0.55秒OnCompanionAttackImpact事件,恢复Idle绑定参考;根倾角约11.31°,视觉根位移<0.005m。火球/伤害未接入。 | | `AIClient/Assets/Bundles/Characters/Animal/FireCat/FireCat_Animator.controller` | 默认Idle,Motion Int 0/1切换Idle/Walk,Attack Trigger单次施法后恢复请求状态;Root Motion关闭。实际Play三状态与根位置固定通过。事件接收器应位于Animator所在Model或由该处转发。 | | `Tools/output/companions/FireCat/{production_manifest.json,verification.txt,play_verification.txt,walk_verification.txt,motion_processing.txt,walk_processing.txt}` | 完整来源与哈希、配方、出手时刻、三段各121帧蒙皮及状态切换、单Walk门禁和实际Play报告;完整入口已成功复现,status=validated。 | | `Tools/character_animation_pipeline.py`、`Config/Art/Companions/FireCat.json` | 伙伴/敌方共享三动作入口与火喵正式配方,包含自身骨名、全骨骼Walk校准、尾部蒙皮修正、源动作幅度与施法参数;默认缓存,--generate显式推理,--generation-device cpu可选。 | ## 芽芽 BudBud T1 原程序化三动作存档(2026-10-20) 本节8骨版本仅为历史记录,离线源已备份到 `Tools/output/budbud_offline_draft_20261020/output/motions/`,Unity副本位于 `Assets/Temp/BudBud_OfflineDraft_20261020/Anims/`;当前正式路径已替换为同角色TokenRig/UniMate来源。 | 资源路径 | 用途与生成方式 | | --- | --- | | `Tools/output/companions/BudBud/motions/{Idle,Walk,Attack}/animated.fbx` | Blender 5.0 以同一 8 骨 Armature 作者的 2 秒动作源;Idle 呼吸与叶芽摆动、Walk 交替短步、Attack 双手前举治疗脉冲;每段请求 JSON 记录同一 rig SHA-256。 | | `AIClient/Assets/Bundles/Characters/Animal/BudBud/Anims/BudBud_{Idle,Walk,Attack}.fbx` | 上述动作源的 Unity 导入副本;待 Unity `SetupAnimalAnimator.Run` 生成 `Clips/*.anim` 与 Animator Controller。 | | `Tools/create_budbud_assets.py` | 绑定网格、同骨架三动作和预览图的离线生成脚本;未使用运行时临时动画。 | ## 芽芽 BudBud T1 正式三动作(2026-10-20) | 资源路径 | 用途与生成方式 | | --- | --- | | `Tools/output/companions/BudBud/motions/{Idle,Walk,Attack}/` | 本次DGXA UniMate同角色22骨新生成源GLB/FBX、高模预览、npy、请求及日志,均CUDA成功;先验收单Walk再补Idle/治疗施法Attack。三段rig SHA256=729fbbd3…4af98,并校验各源FBX哈希;替换原8骨程序化来源。 | | `AIClient/Assets/Bundles/Characters/Animal/BudBud/Anims/BudBud_{Idle,Walk,Attack}.fbx` | Pipeline导入同rig三段原始动画,Generic共享Avatar,保留来源。 | | `AIClient/Assets/Bundles/Characters/Animal/BudBud/Clips/Idle.anim` | 1.6秒循环,源变化8%+离线轻呼吸/贴地/端点绑定参考;最大形变0.01614m,根倾角1.539°。 | | `AIClient/Assets/Bundles/Characters/Animal/BudBud/Clips/Walk.anim` | 1.1秒循环,全骨骼首帧相对绑定校准解决源65.349°根倾斜,35%源变化+交替短步/贴地/闭合;左右步幅0.05763/0.05558m,根倾角7.950°。 | | `AIClient/Assets/Bundles/Characters/Animal/BudBud/Clips/Attack.anim` | 1.1秒非循环,12%源变化+双叶手抬起前推治疗施法离线编辑;0.55秒OnCompanionAttackImpact事件,恢复Idle参考,根倾角2.199°。实际治疗/VFX/SFX未接入。 | | `AIClient/Assets/Bundles/Characters/Animal/BudBud/BudBud_Animator.controller` | 默认Idle,Motion Int 0/1切Idle/Walk,Attack Trigger单次施法后恢复请求状态;Root Motion关闭。Edit状态切换与实际Play三状态通过,事件接收器应在Animator所在Model节点。 | | `Tools/output/companions/BudBud/{production_manifest.json,verification.txt,play_verification.txt,walk_verification.txt,walk_processing.txt,motion_processing.txt}` | 正式来源、哈希、设备/任务号、事件时刻、单Walk门禁、三段各121帧实际蒙皮与状态/Play检查;status=validated。三段接缝0,脚底误差最大0.156mm,Play最大根倾角7.915°、根位置固定。 | ## 闪闪雀 SparkBird T1 三动作(2026-10-20) | 资源路径 | 用途与生成方式 | | --- | --- | | `Tools/output/companions/SparkBird/motions/{Idle,Walk,Attack}/` | 本次已授权DGXA UniMate同角色28骨源GLB/FBX、高模预览、npy、英文提示词、任务号及日志,均CUDA成功;先验收单Walk再生成Idle/Attack,三段rig哈希0c96b8f8…bbe8ab8一致并校验各源FBX哈希。 | | `AIClient/Assets/Bundles/Characters/Animal/SparkBird/Anims/SparkBird_{Idle,Walk,Attack}.fbx` | Pipeline导入上述同源原始动画,Generic共享Avatar,保留为来源中间件。 | | `AIClient/Assets/Bundles/Characters/Animal/SparkBird/Clips/Idle.anim` | 1.4秒循环,6%源变化+离线轻呼吸/翼部收整/贴地/绑定端点;最大形变0.01301m、根倾角0.692°。 | | `AIClient/Assets/Bundles/Characters/Animal/SparkBird/Clips/Walk.anim` | 0.9秒地面短步循环,全骨骼绑定校准解决源76.906°根倾斜,25%源变化+交替短步/贴地/闭合;左右步幅0.04259/0.04558m,根倾角2.209°。 | | `AIClient/Assets/Bundles/Characters/Animal/SparkBird/Clips/Attack.anim` | 1.0秒单次,10%源变化+鸟型35°前挥/25°展翼离线编辑;0.45秒OnCompanionAttackImpact事件,恢复Idle;双翼相对身体前挥0.03432/0.03705m,根倾角3.446°,雷电/伤害未接入。 | | `AIClient/Assets/Bundles/Characters/Animal/SparkBird/SparkBird_Animator.controller` | 默认Idle,Motion Int 0/1切Idle/Walk,Attack Trigger触发单次挥翼施法后恢复请求状态,Root Motion关闭;编辑期切换与实际Play三状态通过。 | | `Tools/output/companions/SparkBird/{production_manifest.json,verification.txt,walk_verification.txt,play_verification.txt,walk_processing.txt,motion_processing.txt}` | 完整来源/设备/任务/哈希、鸟型单Walk门禁、三段各121帧实际蒙皮、扣除身体转动的双翼前挥、控制器及真实Play报告;status=validated,三段端点差0,脚底误差最大0.076mm,Play最大根倾角3.421°。 | | `AIClient/AgentScripts/FinalizeEnemyMotions.cs` / `VerifyEnemyMotions.cs` | 新增avian_grounded/wing_cast离线分支和双翼相对身体前挥>1cm门禁;自身翼根/翼尖映射,保留已有biped_short路径。最终闪闪雀实际Edit/Play及近景通过。 | ## 泡泡龟 BubbleTurtle T1 三动作(2026-10-21) | 资源路径 | 用途与生成方式 | | --- | --- | | `Tools/output/companions/BubbleTurtle/motions/{Idle,Walk,Attack}/` | 已授权DGXA UniMate在最终26骨rig生成三动作,全部CUDA成功;先验单Walk再补Idle/Attack。原始GLB/FBX、高模预览、npy、英文提示词、任务及rig/FBX哈希完整,rig=b913d91b…6216d5。反向11骨Walk仅存diagnostics,不可混用。 | | `AIClient/Assets/Bundles/Characters/Animal/BubbleTurtle/Anims/BubbleTurtle_{Idle,Walk,Attack}.fbx` | Pipeline导入同源原始动画,Generic共用Avatar;最终播放使用离线编辑后的Clips。 | | `AIClient/Assets/Bundles/Characters/Animal/BubbleTurtle/Clips/Idle.anim` | 2秒循环,4%源变化+轻微头部呼吸,四脚固定/壳体稳定/首尾绑定;最大形变0.00636m,身体相对绑定倾角0.040°。 | | `AIClient/Assets/Bundles/Characters/Animal/BubbleTurtle/Clips/Walk.anim` | 1.6秒循环,12%源变化+四拍短步/20%摆动窗口;四脚实际网格步幅0.03499/0.03472/0.03413/0.03371m,抬脚0.00769~0.00921m,至少三脚支撑,身体倾角0.201°。 | | `AIClient/Assets/Bundles/Characters/Animal/BubbleTurtle/Clips/Attack.anim` | 1.2秒单次,8%源变化+缩颈/探头吐泡泡/恢复,四脚撑地;0.6秒OnCompanionAttackImpact事件,前伸0.02409m/后缩0.00797m,最大形变0.03919m、身体倾角2.731°。泡泡特效及缓速未接入。 | | `AIClient/Assets/Bundles/Characters/Animal/BubbleTurtle/BubbleTurtle_Animator.controller` | 默认Idle,Motion Int 0/1,Attack Trigger单次后恢复请求状态,Root Motion关闭;切换/过渡及真实Play三状态通过。 | | `Tools/output/companions/BubbleTurtle/{production_manifest.json,verification.txt,walk_verification.txt,play_verification.txt,walk_processing.txt,motion_processing.txt}` | status=validated;三段各121帧四脚实际蒙皮、壳区860个Unity顶点刚性/身体朝向、接缝/事件/控制器/真实Play。三段端点差0,最大脚底误差0.238mm,壳区形变在报告精度为0,Play身体倾角2.714°、根固定。 | | `AIClient/AgentScripts/FinalizeAnimalWalk.cs` / `FinalizeEnemyMotions.cs` / `VerifyQuadrupedMotions.cs` | 标准流程新增quadruped_turtle/turtle_bubble;四脚分别收尾和验证,身体倾角测壳体绑定方向,四脚实际网格步幅/抬脚/支撑和壳刚性检查,头颈回缩/前伸/恢复与实际Play门禁;保留既有双足/鸟型入口。 | ## 岩甲犀 RockRhino 三动作(2026-10-21) | 路径 | 说明 | | --- | --- | | `Tools/output/companions/RockRhino/motions/{Idle,Walk,Attack}/` | 同一自身29骨rig的新UniMate源动作,CUDA顺序生成,先Walk门禁及五相位目视再Idle/Attack;每段motion_request.json记录英文提示词/任务/rig与FBX哈希。 | | `AIClient/Assets/Bundles/Characters/Animal/RockRhino/Anims/RockRhino_{Idle,Walk,Attack}.fbx` | Pipeline导入的同源动作中间件;导入前来源哈希、导入后骨路径一致性检查通过。 | | `AIClient/Assets/Bundles/Characters/Animal/RockRhino/Clips/Idle.anim` | 2.0秒循环,4%源变化+轻呼吸;实际蒙皮最大变化7.24mm,四脚撑地,循环接缝0。 | | `AIClient/Assets/Bundles/Characters/Animal/RockRhino/Clips/Walk.anim` | 1.4秒四拍循环,12%源变化+离线短步,四脚实际步幅约59.6~59.8mm、抬脚14.7~16.0mm,至少三脚支撑;根XZ/接缝0、脚底误差≤0.164mm。 | | `AIClient/Assets/Bundles/Characters/Animal/RockRhino/Clips/Attack.anim` | 1.2秒单次头肩冲撞,后收→低头前送→恢复,4%源变化+离线重型四足收尾;头前送41.45mm、肩25.07mm、头转约11.21°,四脚支撑、岩甲/独角刚性通过;0.6秒OnCompanionAttackImpact事件。 | | `AIClient/Assets/Bundles/Characters/Animal/RockRhino/RockRhino_Animator.controller` | Motion Int 0=Idle/1=Walk,Attack Trigger单次攻击,可从两状态进入并返回请求状态;编辑期切换与实际Play三状态通过,最大身体倾角2.826°、根固定。 | | `Tools/output/companions/RockRhino/{verification,walk_verification,play_verification,walk_processing,motion_processing}.txt` | 每段121帧实际蒙皮/四脚/方向/岩甲与角/循环/恢复/事件/控制器及Play回执;last_failure.txt保留已修正的8%Attack后蹄抬起诊断,不是最终状态。 | ## 烈焰狮 FlameLion 动作制作(2026-10-21) | 路径 | 说明 | | --- | --- | | `Tools/output/companions/FlameLion/motions/{Idle,Walk,Attack}/` | 最终28骨上UniMate CUDA顺序新生成,先单Walk门禁/四相位目视再Idle/Attack;各段motion_request.json保留英文提示词、任务、rig/FBX哈希。三动作同rig,源哈希通过。 | | `AIClient/Assets/Bundles/Characters/Animal/FlameLion/Anims/FlameLion_Walk.fbx` / `Clips/Walk.anim` | 单Walk已导入并离线处理,1.2秒循环、12%源变化,实际两脚步幅48.66/67.37mm、抬脚17.89/11.91mm,至少一脚支撑、鬃毛刚性通过;现已完成三动作离线收尾及实际Play,见下方正式交付。 | ## P0 五类正式敌人三动作(2026-10-21) | 资源路径 | 用途与生成方式 | | --- | --- | | `Tools/output/enemy_characters/{Hornlet,Dashlet,Shellhorn,HornCaptain,GreatHorn}/motions/{Idle,Walk,Attack}/` | DGXA UniMate 在各自同源 rig 上生成的源动作(英文提示词、任务号、rig/FBX 哈希见 motion_request.json/unimate_manifest.json)。小角怪 Walk 首次因 DGXA 并发任务报 `No module named 'Animation'` 失败,单独重试成功。 | | `AIClient/Assets/Bundles/Characters/Enemy/{Name}/Clips/{Idle,Walk,Attack}.anim` | 离线收尾(walkBindCalibration 0.25、idle 0.06、attack 0.1 源权重;body_slam 蓄力 0.25/命中 0.45/恢复 ~0.88)。周期:小角怪 Walk 1.0s/Idle 1.6s/Attack 1.0s;疾跑怪 0.8/1.4/0.9;硬壳怪 1.2/1.8/1.0;角怪队长 1.1/1.8/1.0;大角首领 1.3/2.0/1.2。121 帧实际蒙皮验收:首尾接缝 0、Walk 根 XZ 0、脚底偏差 ≤1.9mm,双脚步幅约 4.4~6.9cm;控制器 Idle↔Walk、单次 Trigger 单次攻击并恢复。报告 `Tools/output/enemy_characters/{Name}/verification.txt`、`play_verification.txt`。 | | `AIClient/Assets/Bundles/Characters/Enemy/{Name}/Anims/{Name}_{Idle,Walk,Attack}.fbx` | Pipeline 导入的同源源动作 FBX,仅作为离线收尾输入,运行时使用 Clips。 | ## 烈焰狮 FlameLion 三动作正式交付(2026-10-21) | 路径 | 说明 | | --- | --- | | `AIClient/Assets/Bundles/Characters/Animal/FlameLion/Anims/FlameLion_{Idle,Walk,Attack}.fbx` | 最终自身28骨的同源UniMate三段中间件,CUDA生成、rig与FBX哈希及导入骨路径通过;先Walk后Idle/Attack。 | | `AIClient/Assets/Bundles/Characters/Animal/FlameLion/Clips/Idle.anim` | 1.8秒循环,8%源变化+轻呼吸,最大实际形变22.03mm、两脚支撑、鬃毛刚性通过。 | | `AIClient/Assets/Bundles/Characters/Animal/FlameLion/Clips/Walk.anim` | 1.2秒循环,12%源变化+离线短步,实际步幅48.66/67.37mm、抬脚17.89/11.91mm,至少一脚支撑、整体底面误差≤0.117mm、接缝/根XZ为0。 | | `AIClient/Assets/Bundles/Characters/Animal/FlameLion/Clips/Attack.anim` | 1.2秒单次火焰施法,两脚撑地、头部前送16.24mm/抬头6.654°,双爪前送62.57/59.74mm、外展20.23/18.17mm;扣除身体转动后仍通过,0.6秒OnCompanionAttackImpact事件,恢复Idle参考。 | | `AIClient/Assets/Bundles/Characters/Animal/FlameLion/FlameLion_Animator.controller` | Motion Int 0=Idle/1=Walk、Attack Trigger单次;状态切换与恢复、每段121帧实际蒙皮/鬃毛刚性/双脚/根/事件及实际Play三状态通过,最大根/身体倾角3.504°。 | | `Tools/output/companions/FlameLion/{verification,walk_verification,play_verification,walk_processing,motion_processing}.txt` | 最终完整QA与离线收尾回执;last_failure.txt保留已修正的25%源变化抬脚诊断,当前状态以validated生产清单为准。 | ## 伙伴 7~9 三动作(2026-10-21) | 资源路径 | 用途与生成方式 | | --- | --- | | `Tools/output/companions/{VineSprite,ThunderLeopard,TideWhale}/motions/{Idle,Walk,Attack}/` | DGXA UniMate 同源 rig 生成的源动作(提示词、任务号、哈希见 motion_request.json)。 | | `AIClient/Assets/Bundles/Characters/Animal/{Name}/Anims/{Name}_{Idle,Walk,Attack}.fbx`、`Clips/{Idle,Walk,Attack}.anim` | 离线收尾后 121 帧实际蒙皮验收通过。藤蔓灵 Walk 1.1/Idle 1.6/Attack 1.1s(双手治疗施法);雷鸣豹 1.1/1.8/1.0s(四拍步态、头肩短扑,护甲与额冠刚性);潮汐鲸 1.3/2.0/1.1s(短体撞)。报告 `Tools/output/companions/{Name}/verification.txt`、`play_verification.txt`。 | ## 大角首领Studio试验版动作复用(2026-10-21) `Assets/Bundles/Characters/Enemy/GreatHornStudio/GreatHornStudio_Enemy.prefab` 直接复用原 `GreatHorn/GreatHorn_Animator.controller`、原Avatar(原Rigged FBX子资产)与 `GreatHorn/Clips/{Idle,Walk,Attack}.anim`。本批无新动作生成或成品动作改写;原动作文件哈希一致。新2000面网格经Blender转原22骨与两个脚底顶点1毫米局部适配后,三段各121帧采样、真实Play及外层根固定检查通过。详情 `Doc/Design/Character/GreatHorn/StudioTrial.md`。 ## 伙伴 Studio 版动作复用(2026-10-21) 9 个 `{X}Studio_Companion.prefab` 直接复用各自原 `{X}_Animator.controller`、原 Avatar 与 `Clips/{Idle,Walk,Attack}.anim`,无新动作生成或改写;原动作哈希一致。详情 `Doc/Design/Character/CompanionStudioBatch.md`。 ## 四敌人Studio版原动作复用(2026-10-21) 四个 `{Actor}Studio_Enemy.prefab` 直接引用各自原 `{Actor}_Animator.controller`、原Avatar及 `{Actor}/Clips/{Idle,Walk,Attack}.anim`;原成品动作文件哈希一致,本批无新增动画。小角怪/疾跑怪/角怪队长原22骨、硬壳怪原28骨;1452帧实际蒙皮采样、统一Play三状态/方向/外层根固定通过。报告 `Doc/Design/Character/StudioEnemies/Production.md`。 ## 五敌人战场替换与技能闭环样例(2026-10-21) 五敌人正式战场继续复用原 Avatar、AnimatorController 与 Idle/Walk/Attack,未改动画文件。独立 `SkillSlicePlayer` 根据逻辑释放 tick 和角色原配方 attackImpact 分段采样 Attack,将前摇/命中点/后摇对齐;动作不决定伤害。样例与正式主线规则分开,详见 `Doc/Design/Combat/SkillSlice/Production.md`。 ## 权威技能协议与正式战场接入(2026-10-21) 正式战斗复用原10伙伴/5敌人的Idle/Walk/Attack,没有改写成品动画。BattleSkillPresentation读取各角色原配方attackImpact,经Pipeline持久化15项映射,将原Attack前摇/释放/后摇分段对齐权威tick;零前摇护盾不强制跳到攻击中间姿势。AnimationEvent不决定伤害,旧规则继续原Animator播放。 ## 潮汐鲸T2复用原动作(2026-10-22) `TideWhale_T2.prefab`沿用TideWhaleStudio的原22骨Avatar与TideWhale控制器、Idle/Walk/Attack,不新增或修改动作资产。400面贝壳冠绑bone_4,三段动作各121帧采样中挂件相对头骨变换恒定;第20关权威轨迹验证Attack、水罩、暂停和2倍速。来源与回执 `Doc/Design/Character/TideWhale/T2/`。 ## 营地向导站立与行走(2026-10-23) `AIClient/Assets/Bundles/Characters/Human/CampGuideStudio/Anims/CampGuideStudio_Idle.fbx` 与 `CampGuideStudio_Walk.fbx` 是 Kimodo 原地动作,重定向到上面的 33 根 Mixamo 骨。站立约 1.5 秒,是 T 字休息姿势上的轻微呼吸,手臂仍张开。行走约 1.5 秒,髋部位移被清掉,腿有交替迈步。Animator 参数 `Motion`:0=Idle、1=Walk,Root Motion 关闭。主界面 `ExplorerLocomotion` 按水平位移切换。验收图 `Tools/output/campguide_studio/review/`。 早一版 `CampGuide/Clips` 里由 `BuildCampGuide.Author` 手写的垂臂循环已不再被主界面使用。 同一段旧 BVH 重定向的结果在 `Tools/output/campguide_studio/rig_fixed/`。2026-10-23 又用同一句提示词让 Kimodo 重新生成,再套到 25 根固定 Mixamo 骨架上,文件在 `Tools/output/campguide_studio/rig_fixed/kimodo_regen/`。那一版站立仍是张开手臂,行走双脚离地。 随后把 SOMA 骨架贴到同一网格并蒙皮,Kimodo 重新生成的站立和行走按同名关节直接套上,骨轴夹角为 0。文件在 `Tools/output/campguide_studio/rig_soma/kimodo/`。站立变成垂臂站立,行走有交替迈步和摆臂。部分帧仍把后脑和手指拉裂,所以没有替换主界面剪辑。 ### SOMA 手部权重隔离试验(2026-10-23) - `Tools/output/campguide_studio/rig_soma/audit/hand_cleanup/{Idle,Walk}.{glb,fbx}`:原 BVH、原 `_apply_bvh.py` 烘焙到仅清理手部权重的网格,便于控制变量比较;各 45 帧、30fps,保留原来的 Hips 清零行为。未作为正式动作导入 Unity。 - `Tools/output/campguide_studio/rig_soma/audit/control/Walk.{glb,fbx}`:原 `skinned.glb` 重新烘焙的对照件,复现原 Walk 的 11.254 倍最坏边拉伸,排除本轮脚本重跑差异。 - 同一套骨架姿态下,手部有效边的最坏拉伸 Idle 6.064→1.763、Walk 11.254→2.115。统计排除静态长度小于身高 0.2% 的边;不是穿插、体积或整体动作质量评分。全身最坏值仍为 Idle 2.593、Walk 6.426,主要残留在颈部。 - 原 Walk 左上臂首尾局部旋转相差 76.63°,右大腿 45.26°,不能直接视为无缝循环;原 BVH Hips 世界高度变化约 0.061m,而当前烘焙将 Root/Hips 全部位移清零。下一轮应保留按角色比例缩放的垂直起伏,移除水平净行程,并单独做支撑脚接地与周期截取。 ### Mixamo 网站动画离线审计(2026-10-23) - 用户提供 `AIClient/Assets/Bundles/Characters/Human/test/Boy_mixamo/CampGuideStudio@{Walking,Breathing Idle,Happy Idle}.fbx`,三份均为无网格的 41 骨动画,30fps。分别为 1–32、1–299、1–61 帧,首尾时间跨度 1.033/9.933/2.000 秒。本轮没有生成或改写动画资产。 - 原绑定 FBX 和动画 FBX 经 Blender 导入后的休息姿态与朝向不同。离线审计按同名骨骼的动画世界姿态应用到原绑定网格,保留原网格绑定矩阵,避免直接复制局部旋转;这不是 Unity Humanoid 实播验收。 - 逐原始帧蒙皮采样:Walking 全身最大边拉伸 2.029 倍,手部 1.547、颈部 1.427;Breathing Idle 全身 1.668,Happy Idle 1.778。Walking 超过 2 倍的边每帧最多 1 条,位于裆部;两种 Idle 没有超过 2 倍的有效边。统计排除静态长度小于身高 0.2% 的边,不能单独代表体积、穿插或动作审美。 - Walking 与 Breathing Idle 首尾各关节局部旋转误差在本轮浮点精度下为 0;Happy Idle 最大约 0.377°。Walking 同时保留约 0.954m 的前进位移,源模型尺度下约 0.923m/s,骨盆上下变化约 0.042m。若角色由游戏逻辑移动,需处理水平行程并按实际角色缩放匹配步速,不应把骨盆垂直位移一并清零。 - Walking 蒙皮后全身最低点为 -5.52~3.84mm,SOMA Walk 为 2.87~37.96mm;只是离线接地参考,不等于严格的零滑步验证。明细与局部旋转、关节轨迹见 `Tools/output/campguide_studio/mixamo_audit/comparison.json`。 ### TokenRig 固定 41 骨的同动作评审件(2026-10-23) - `Tools/output/campguide_studio/rig_mixamo41/animations/{raw,local}/{Walking,Breathing_Idle,Happy_Idle}.glb`:6 个包含网格、41 骨与烘焙动画的离线预览件;原始 TokenRig 权重与仅清理手部跨部位影响的版本,各复用同一组用户提供的 Mixamo 动作。30fps,帧范围分别 1–32、1–299、1–61。保留源动作水平行程、垂直起伏与首尾姿态,没有重新生成动作。 - `Tools/model_tools/bl_bake_tokenrig_mixamo41.py` 按同名骨世界姿态逐帧烘焙;`bl_verify_tokenrig_mixamo41_exports.py` 对 6 个 GLB 重导入,核对帧数和各区域最大拉伸,均与源评估相差小于 0.001。清单 `animations/manifest.json`,验证回执 `export_verification.json`。 - 三段动作全身最大边拉伸(网站/原始 TokenRig/局部约束后):Walking `2.029/6.218/1.800`;Breathing Idle `1.668/3.415/1.710`;Happy Idle `1.778/3.602/1.691`。统计排除静态长度小于身高 0.2% 的边;只代表当前网格、当前三段动作的离线形变结果,未替换正式动画或验证 Unity 播放。 ### Unity 同动作蒙皮观看场景(2026-10-23) - `AIClient/Assets/Review/CharacterAnimationLab/Generated/{Walking,Breathing_Idle,Happy_Idle}.anim`:Pipeline 生成的原生 Transform 动画,共用用户提供的三段 Mixamo 动作逐帧姿态,分别 32/299/61 帧、30fps;三版蒙皮采样同一个 Clip 和时间,没有重新生成动作或使用 Humanoid 重定向。 - 场景 `AIClient/Assets/Review/CharacterAnimationLab/CharacterAnimationLab.unity` 支持同步播放、暂停、前后逐帧、拖动进度、0.25/0.5/1/2 倍速、原地循环与保留位移。原地模式移除首尾净行程,保留周期内骨盆摆动与起伏;源 FBX 未改写。 - Unity 原生蒙皮 1176 帧次与离线数据核验通过;Play Mode 的动作选择、进度指针、速度、视角、灰模、手部聚焦、位移开关及 41 骨同步检查通过。回执 `Tools/output/campguide_studio/rig_mixamo41/unity_review/{unity_verification,unity_controls}.json`;未替换正式角色动作。 ### LmGirl 复用原 Mixamo Walking(2026-10-23) - `Tools/output/lmgirl_tpose_studio/rig_mixamo41/Walking_{raw,post,clean,clean_eps,local}.glb`:五版绑定网格与相同 Walking,32 帧、30fps;与原男角色相同的骨骼旋转,按目标休息姿态适配局部骨段位移,根位移/起伏比例约 1.2371。五份 GLB 重导入与源指标误差均小于 0.00013,见 `export_verification.json`。 - Unity 直接引用既有 `AIClient/Assets/Review/CharacterAnimationLab/Generated/Walking.anim`,没有复制或修改旋转曲线。观看器新增可选的每骨平移偏移与比例,原男角色无该映射时行为不变,原场景控件回归通过。LmGirl 同时可播放原 Breathing/Happy Idle,当前量化逐帧验收只覆盖 Walking。 - 五版共 160 次原生蒙皮采样通过,最大指标误差小于 0.000046;同一 Walking 资产引用、41 骨同步、21 控件、同比例原地位移移除均验证通过,回执 `rig_mixamo41/{unity_verification,unity_controls}.json`。局部约束版原尺度脚底最低点在 -10.6~23.7mm 范围,尚未处理脚底 IK/滑步;手掌刚性跟随手腕,不承诺独立手指动作。 ### LmGirl 网站 33 骨的相同 Walking 对比(2026-10-23) - 网站版继续采样同一个既有 Walking.anim 和同一时间,未使用源文件附带的动画。按源/目标休息姿态做世界旋转差映射,局部位移差先换到目标父骨坐标,再按身材比例缩放;保留网站 33 骨自身骨轴,不直接照抄男角色骨轴下的局部旋转。 - 网站版 32 帧 Walking 的原生蒙皮与独立矩阵 LBS 参考核验通过;本轮也验证 22 个播放/逐帧/进度/视角/材质控件和四版独立聚焦。完整量化仍只覆盖 Walking,其余两段动作做播放控件验证。 ### LmGirl Walking 脚部轨迹重定向修正(2026-10-23) - 新原生剪辑 `AIClient/Assets/Review/CharacterAnimationLab/LmGirl/Generated/Walking_LmGirl41.anim`、`Walking_LmGirlMixamo33.anim`:源仍为男孩 Walking 的 32 帧、30fps,但针对目标髋宽、髋到脚踝高度比例重定向源动作的骨盆相对脚踝轨迹,使用源膝盖方向做双骨 IK,保持目标大腿/小腿长度和原映射脚部朝向。腿部目标旋转重新求解;男孩原 Walking.anim 与其他源剪辑未修改。这两份目标剪辑取代了此前仅缩放骨段并照搬角度的女孩行走适配。 - 生成入口 `Tools/model_tools/bl_diagnose_lmgirl_gait.py`(诊断、correct、export、verify-exports);映射及姿态样本 `Tools/output/lmgirl_tpose_studio/rig_mixamo41/gait_correction.json`。每步目标无法完全到达的最大距离约 TokenRig 0.57mm/网站 1.76mm,按固定腿长限制到可达范围。 - `Tools/output/lmgirl_tpose_studio/rig_mixamo41/Walking_{raw,post,clean,clean_eps,local}_corrected.glb`:五版同修正步态外部预览件;源静态 .blend、绑定 .glb 和旧 Walking_*.glb 未覆盖,旧件用于未修正基线。5 件重导入核验通过,见 `gait_export_manifest.json` / `gait_export_verification.json`。 - `AIClient/AgentScripts/VerifyLmGirlGait.cs`:32 原帧目标姿态误差最大约 0.00000048m,120Hz 扫描四版共 500 个样本未发现脚踝跨线;网站最小间距约 0.0863m,TokenRig 各版约 0.0959m(原尺度)。腿段长度漂移小于 0.00000051m。修正动作上 192 次原生蒙皮采样也与独立 LBS 参考通过;局部约束版最大有效边拉伸仍约 1.903。回执 `unity_gait_verification.json`。 - 本轮修复落脚宽度/交叉,不含地面接触锁定或零滑步求解。局部约束版原尺度脚底最低点约 -14.5~13.8mm;原生源 Walking 与未修正参考数据仍保存。`summary.json` 已区分 baseline 与 active 指标,不再声称女孩行走直接采样未变的同一动画资产。 ### Mixamo Walking 在 Unity 中的 Avatar 参考姿势修复(2026-10-24) - `AIClient/Assets/Bundles/Characters/Human/Common/Walking.fbx`:经 Unity Pipeline 将 Rig 的 Avatar Definition 从 Create From This Model 改为 Copy From Other Avatar,Source 使用当前网站绑定模型 `test/Boy_mixamo/CampGuideStudio.fbx` 的 CampGuideStudioAvatar;保持 Humanoid、原循环/根位移及控制器引用。未更改原始 FBX 字节、网格、权重或动画曲线源。原 source Avatar 自动参考姿势与模型不同,引入脚部方向异常。 - `AIClient/Assets/Review/CharacterAnimationLab/PlaybackDiagnostics/Walking_{Generic,CopyBoyAvatar}.fbx`:Pipeline CopyAsset 生成的隔离诊断副本。Generic 使用无 Avatar、无压缩的原骨骼曲线作为直接 FBX 参考;CopyBoyAvatar 验证模型 Avatar 共享后效果,均不接入正式控制器/业务场景。 - 32帧、30Hz、相对骨盆的对比:原 Humanoid 脚部方向最大偏差34.018°,脚踝位置偏差6.423cm,最大关节点偏差10.723cm;修复后分别2.785°/1.028cm/2.105cm。Generic 对独立 Blender FBX 轨迹误差小于0.242mm,脚部方向误差小于0.00012°。保留标准 Humanoid 重定向的小偏差,未宣称逐帧完全等同网站。 ### 男女角色共享 Walking 的 Foot IK 修复(2026-10-25) - 经 Unity Pipeline 将 `AIClient/Assets/Bundles/Characters/Human/Common/Man.controller` 的 walk 状态 Foot IK 开启;两角色继续使用同一 `Common/Walking.fbx`,动画 Source Avatar 保持男孩,两实例各自使用自己的 Avatar。没有新增动画曲线或修改模型权重、参考姿势、FBX、导入器。本条更新此前 Foot IK 关闭的历史记录。 - 隔离 Animator 一周期120Hz、每角色125个样本:女孩关闭 Foot IK 时脚踝有向间距 -3.522~1.805cm,106个样本交叉;开启后10.049~14.024cm,0交叉。男孩开启前后约8.6~11.4cm,均0交叉。生产控制器实际采样复核通过,见 `Tools/output/lmgirl_tpose_studio/shared_walk_audit/validation.json`。未把脚踝间距等同鞋面无碰撞或地面零滑步保证;未比较不存在的女孩专属网站Walking文件。 ### 人形小熊 LittleBear Idle/Walk(2026-10-26) - `AIClient/Assets/Bundles/Characters/Human/LittleBear/LittleBear.controller`:独立Humanoid控制器,`Motion` Int 0=Idle、1=Walk,双向过渡0.15秒,两状态Foot IK开启。`LittleBear.prefab` 使用自己的有效 `LittleBear_RiggedAvatar`,Root Motion关闭。 - Idle直接复用 `Common/CampGuideStudio@Breathing Idle.fbx`;Walk直接复用 `Common/Walking.fbx`,原动画与源Avatar保持不变。蒙皮FBX仅含绑定姿态,不内嵌动作,不生成新动作曲线。 - `Tools/output/littlebear_studio/review/unity_validation.json`:两状态各125个归一化相位采样,脚踝交叉0;Walking间距8.28~10.98cm,最大有效边拉伸2.178倍(裆部平滑前3.254倍),Idle最大1.928倍;Motion参数往返切换通过。Walking脚底最低点范围-1.20~2.41cm,尚不承诺零滑步;验证为Editor隔离Animator,不是Play Mode整场验证。 - 总来源与复现见 `Doc/Design/Character/LittleBear/production_receipt.json`;专属验收场景 `Assets/Bundles/Scenes/Review/LittleBearReview.unity`。 ### XBot 通用 Humanoid Controller(2026-10-26) - `AIClient/Assets/Bundles/Characters/Human/Common/XBot.controller`:通过 Unity Pipeline 执行 `AIClient/AgentScripts/BuildXBotController.cs` 生成。单层四状态:默认 `Idle`、`Walk`、`Attack01`、`Attack02`。`Motion` 为 Int,0(及非1值)=Idle,1=Walk;双向过渡0.15秒。`Attack01`、`Attack02` 为 Trigger,从 Any State 以0.1秒过渡触发对应攻击,禁止同状态自身重入;其他攻击Trigger可打断当前攻击。攻击到归一化时间0.95后,以0.15秒过渡按当前Motion返回Idle或Walk。 - `AIClient/Assets/Bundles/Characters/Human/Common/AnimX/X Bot@BreathingIdle.fbx`:用户提供的无网格65骨Mixamo待机源,导入剪辑名 `Idle`,30fps、3.300秒、循环。 - `AIClient/Assets/Bundles/Characters/Human/Common/AnimX/X Bot@Walking.fbx`:用户提供的无网格65骨Mixamo行走源,导入剪辑名 `Walk`,30fps、0.967秒、循环。 - `AIClient/Assets/Bundles/Characters/Human/Common/AnimX/X Bot@atk01.fbx` 与 `X Bot@Atk02.fbx`:用户提供的无网格65骨Mixamo攻击源,导入剪辑名分别为 `Attack01`/`Attack02`,30fps、3.500/4.933秒、不循环;未裁切原动作。 - 上述四段FBX经Pipeline导入为Humanoid,骨名及骨骼父子层级均与XBot完全一致(忽略非骨骼外层节点名称)。`Common/XBot.fbx` 经Pipeline配置为Humanoid、Create From This Model;动作使用Copy From Other Avatar并引用其有效XBotAvatar,避免从动作姿态生成参考Avatar。原始FBX字节不修改。 - 使用:角色Animator的Controller指定 `XBot.controller`,Avatar指定角色自己的有效Humanoid Avatar,关闭Apply Root Motion。调用 `animator.SetInteger("Motion", 1/0)` 切换行走/待机,`animator.SetTrigger("Attack01")` 或 `SetTrigger("Attack02")` 触发攻击。四动作均将根旋转、Y、XZ烘焙进姿态,角色位移由业务驱动;Idle/Walk开启Foot IK。其他人形角色可共用Controller,但须使用自身Avatar并另行验收;本轮未配置或验证YBot。 - 验证回执 `Tools/output/common_bot_controller/validation.json`:XBot有效Humanoid Avatar、65骨;四状态各25个相位的骨骼姿态采样通过(100次),6条待机/行走/攻击往返路径通过。验证在Editor隔离Preview Scene执行,不修改当前场景;未进行Play Mode整场或零滑步/穿插的视觉验收。生成脚本拒绝覆盖已有Controller;仅重新检查可运行 `BuildXBotController.Verify`。 ### YBot 通用 Humanoid Controller(2026-10-26) - `AIClient/Assets/Bundles/Characters/Human/Common/YBot.controller`:通过 Unity Pipeline 执行 `AIClient/AgentScripts/BuildYBotController.cs` 生成,引用AnimY的四段动作。沿用XBot参数约定:默认 `Idle`,`Motion` Int 0(及非1值)=Idle、1=Walk;`Attack01`/`Attack02` Trigger触发对应攻击。Idle/Walk循环并开启Foot IK,攻击不循环;待机行走过渡0.15秒,Any State进入攻击0.1秒,禁止同状态自身重入,其他攻击Trigger可打断当前攻击。攻击到归一化时间0.95后,以0.15秒过渡按当前Motion返回Idle或Walk。 - `AIClient/Assets/Bundles/Characters/Human/Common/AnimY/Y Bot@BreathingIdle.fbx`:用户提供的无网格65骨Mixamo待机源,Humanoid剪辑 `Idle`,30fps、9.933秒、循环。 - `AIClient/Assets/Bundles/Characters/Human/Common/AnimY/Y Bot@Walking.fbx`:用户提供的无网格65骨Mixamo行走源,Humanoid剪辑 `Walk`,30fps、1.033秒、循环。 - `AIClient/Assets/Bundles/Characters/Human/Common/AnimY/Y Bot@Atk01.fbx` 与 `Y Bot@atk02.fbx`:用户提供的无网格65骨Mixamo攻击源,Humanoid剪辑 `Attack01`/`Attack02`,30fps、2.333/1.867秒、不循环;保留完整原动作。 - 四段源骨名及骨骼父子层级与YBot完全一致(忽略非骨骼外层节点名称)。`Common/YBot.fbx` 经Pipeline配置为Humanoid、Create From This Model;四动作经Pipeline配置为Copy From Other Avatar,使用有效YBotAvatar。原始FBX字节不修改,根旋转、Y、XZ烘焙进姿态。使用时角色Animator指定本Controller与角色自身有效Humanoid Avatar,关闭Apply Root Motion,业务负责角色位移;其他角色共用需分别验收。 - 验证回执 `Tools/output/common_ybot_controller/validation.json`:YBot有效Humanoid Avatar、65骨,四动作共100次相位采样通过,待机/行走及两种攻击往返共6条路径通过。Editor隔离Preview Scene验证,不改当前场景;尚未进行Play Mode整场及接地/穿插视觉验收。生成入口 `BuildYBotController.Build` 拒绝覆盖已有Controller,重验入口 `BuildYBotController.Verify`。 ### Bot 动作测试与25/41骨共享控制器(2026-10-26) - 当前测试入口切换到 `AIClient/Assets/Review/BotAnimationLab/BotAnimationLab.unity`,菜单 `Tools/Characters/Open Animation Comparison` 或 `Open Bot Animation Lab`。旧CharacterAnimationLab/LmGirl场景保留。四角色2×2预览:XBot、YBot、XBot25、XBot41;XBot三种骨架引用同一个 `Common/XBot.controller`,YBot引用 `Common/YBot.controller`,直接播放既有AnimX/AnimY动作,没有复制或新烘焙动作。 - `Common/XBot25.fbx`、`Common/XBot41.fbx` 通过Pipeline设置 `Animation Type=Humanoid`、`Avatar Definition=Create From This Model`,各自生成有效 `XBot25Avatar`/`XBot41Avatar`。Prefab中的Animator分别使用自身Avatar、共用XBot.controller、关闭Apply Root Motion。源AnimX仍Copy From Other Avatar引用65骨XBotAvatar,不改成精简角色Avatar。 - 共享依靠Humanoid重定向:角色只需满足有效人形映射,不要求目标也有65骨,不应把65骨Avatar直接指定给不同骨架。25骨版保留完整身体/手腕,无手指链;41骨版额外保留左右拇指/食指链,各自缺少的独立手指动作无法还原。四模型骨名、映射和有效性见 `Tools/output/bot_animation_lab/avatar_configuration.json`。 - 复用成品:`AIClient/Assets/Bundles/Characters/Human/Common/Prefabs/{XBot,YBot,XBot25,XBot41}.prefab`。精简源模型约为XBot的1/100尺度,两个Prefab根均匀缩放约99.3倍,使休息姿态高度约1.896m;未改FBX源字节、蒙皮、骨轴或模型导入globalScale。测试场景进一步统一展示高度1.6m,方便观察。 - `AIClient/Assets/Review/CharacterAnimationLab/{BotAnimationLab,BotAnimationSeekBar}.cs` 控制已有Animator与UI,支持待机/行走/两攻击、播放暂停、前后逐帧、拖动进度、0.25/0.5/1/2倍速、单次/循环攻击、正侧背视图、彩色/灰模、四角色聚焦与全身/上身/手部。运行时不创建角色、动画、材质或业务UI。正常播放走Controller参数/Trigger及真实过渡;Seek按各自动作的同归一化相位定位,X/Y动作时长不同,正常播放与前进一帧按实际秒推进。 - UI为 `Doc/UIPrefabCreater/UI_BotAnimationLab.json` → `AIClient/Assets/Bundles/UI/Prefab/UI_BotAnimationLab.prefab`,1080×1920,复用既有九宫格Sprite。构建/配置/验证入口 `AIClient/AgentScripts/BuildBotAnimationLab.cs`,分别为 `Build`/`Configure`/`Verify`/`Controls`;构建拒绝覆盖任何当前未保存的场景内容。 - `Tools/output/bot_animation_lab/playback_validation.json`:四角色四动作各25相位,共400次Animator姿态和BakeMesh有限值检查;每角色6条待机/行走/攻击往返路径,共24条通过。`play_controls.json`:Play Mode下23个真实UI按钮及进度指针、前后逐帧、速度、聚焦、材质、视角、循环攻击检查通过。已目视复核四版行走和攻击截图;不等同零滑步、全动作无穿插或缺失手指自由度的保证。