Files
udxandClaude Opus 5.5 89e0fa246f Add formal enemies, remaining formal partners and synthesized UI SFX
- UI SFX v3: procedurally synthesized one-shots (Tools/synth_ui_sfx.py) wired to
  buttons, rewards, errors and red dots via UiSfx, gated by the SFX setting.
- Five formal enemies (Hornlet, Dashlet, Shellhorn, HornCaptain, GreatHorn):
  Hunyuan 50k -> 2000-tri XPbr, DGXA TokenRig, Idle/Walk/Attack, nested per type
  in PrototypeArena; PrototypeBattle.Enemy gains presentation-only Moving/Strikes.
- Formal partners for all ten pets in the arena and portraits, including new
  VineSprite, ThunderLeopard and TideWhale.
- Pipeline fixes: reject local TokenRig fallback, drop loose mesh islands,
  configurable Unity run_script timeout, companion static stage.
- Also includes concurrent work from another tool in this working tree
  (FlameLion, enemy combat FX, challenge mode, home explorer, server updates).
- Resources registered in Doc/ResDesc_*.md; verified on isolated :18081.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 12:23:55 +08:00

7.5 KiB
Raw Permalink Blame History

烈焰狮 FlameLion · T1 伙伴制作记录

2026-10-21完成。伙伴ID=6,火元素输出,主动技能“燎原烈焰”(kind=burst,T1/T2为2/3目标)。保留原型双足比例与金橙身体、赤橙鬃毛身份,风格与现有正式伙伴一致。本次交付角色视觉,未修改Config/Gameplay/greenfield.json玩法数值。

交付

项目 路径
静态伙伴 AIClient/Assets/Bundles/Characters/Animal/FlameLion/FlameLion.prefab
动画伙伴入口 同目录 FlameLion_Companion.prefab
骨架中间Prefab 同目录 FlameLion_Rigged.prefab
独立验收场景 AIClient/Assets/Bundles/Scenes/Review/Companion_FlameLion_Review.unity
并排/Play截图 AIClient/Assets/Screenshots/companion_flamelion_{review,play}.png
正式配方 Config/Art/Companions/FlameLion.json
来源与状态 Tools/output/companions/FlameLion/production_manifest.json,status=validated

0.60m、2000三角面/992原始顶点,1024² base/mix、Test/XPbr;每顶点最多4个归一化权重。Unity Y-up、底面中心、局部-Z正面;逻辑根旋转identity/单位缩放,Root Motion关闭。没有运行时补转或临时改骨。

来源与静态验收

内置image_gen参考 AIClient/Assets/Bundles/UI/Texture/Prototype/proto_pet_6.png 身份/双足比例和 Doc/Design/Character/FireCat/firecat.png 风格生成flamelion.png,1024×1536,白底四角RGB最小253;提示词、参考和内置生成模式完整保存于design_prompt.txt。图像SHA256为caec79d3578de66e37861d89dbff1e7b7ee068ab8fd4fd925efaedd777897123。鬃毛与尾簇是实体毛发,无预烘焙喷火或粒子。

用户已明确允许本角色设计图提交腾讯混元3D及模型/骨架发送项目DGXA。官方网页50k任务62a709af10ca42818aa72b6c092402a4得到Tools/output/flamelion_3d/flamelion.glb,实测50000tris、内嵌贴图解码通过。

Blender5减面/UV/烘焙到Tools/output/flamelion_game/flamelion_xpbr。通过Pipeline导入FBX与两张PNG,在Unity创建XPbr与静态Prefab;离线mat/meta不导入。实测静态高0.599976m、底面-0.000001m,正/侧/背/透视图确认-Z与形状,未额外旋转高模。

同角色骨架与权重

首轮DGXA CUDA上下文显存错误后,外部后端回退本机,得到异常33骨长链;该骨架已拒收,保留local_invalid_rigged.glb/回执和bind_probe.txt诊断,不接动作。明确远程重试仍遇显存错误,最小CUDA分配恢复成功且容器无残留任务后再次重试成功;全程未停止其它模型服务。

正式骨架为DGXA TokenRig original自身28骨,Tools/output/flamelion_dgx/high_rig/rigged.glb,回执backend=remote。rig SHA256:e3bdf093d484a2f87d2385b6be372f55594fb8eac7869362e87a43547e61cc96;三段UniMate源动作全部在该rig上新生成,CUDA成功,rig/FBX哈希及导入后骨路径一致性通过。先单Walk数值与四相位目视,再生成Idle/Attack。

自身映射:root0、chest3、neck4、head5;双臂7/14,双爪参考10/17;双脚22/26、脚尖23/27。编号只属于本角色。该骨架没有独立下颌或尾骨,本版无张嘴口型或独立尾部次级摆动;火焰释放由头部/双爪施法动作与事件表达。

低模Y-up→Blender Z-up,对齐底面中心/等比尺寸后转权重,保留原网格和UV。表面距离最大0.012422/RMS0.004445,源高约1.056;最终绑定对照静态模最大顶点误差0.000030m。Armature轴约定保持同源一致,不单独清零。

头鬃宽空间区域影响747个源顶点,其中681个全权重到head5;双脚区域影响44/47个源顶点。随后用更精细的尾部测地距离覆盖58个源顶点到髋骨root0,避免尾簇被头部宽区域或前臂带动。蒙皮工具现明确先空间区域、后测地覆盖的优先级;既有伙伴此前没有同时使用两类覆盖,原单类行为不变。报告保留每区范围和影响数。

skinRegions/skinOverrides使用原静态FBX坐标/高度,Z与Unity相反;maneRegion使用Unity归一化坐标供独立QA。刚性检查覆盖992个头鬃区Unity顶点,扣除头骨刚性变换后误差在报告精度0,门槛1mm;两脚实际采样80/55个顶点。

三动作与验收

动作 成品行为 各121帧实际蒙皮结果
Idle 1.8秒循环,8%源变化+轻呼吸,双脚固定 最大形变0.02203m,身体倾角2.387°,两脚支撑
Walk 1.2秒循环,12%源变化+离线交替短步 实际步幅0.04866/0.06737m,抬脚0.01789/0.01191m,至少一脚支撑;身体倾角3.514°
Attack 1.2秒单次,8%源变化+后收蓄力/双爪展开前送与头部释放/恢复 最大形变0.12594m,头部相对胸背前送0.01624m/抬头6.654°;双爪相对胸背前送0.06257/0.05974m、外展0.02023/0.01817m;两脚支撑,身体倾角1.584°

原始Walk首帧根倾角34.142°,离线对所有骨骼校准至自身绑定姿态,保留相对源变化。最初保留25%源变化时左脚实际抬起6.71mm未通过门槛,降至12%后达11.91mm;不放宽实际网格门槛,也不只检查骨点。

三段首尾顶点差均为0、逻辑根XZ漂移0。Walk整体底面[-0.000109,0.000117]m,Idle/Attack约0~0.000001m;待机与施法两脚持续撑地,最大另一脚离地0.18mm。头部前送、双爪前送/外展扣除胸背转动后检查,不能由身体前倾冒充施法。

控制器Idle↔Walk、两状态进入Attack、单次Trigger只攻击一次、恢复请求状态及过渡贴地通过。实际10秒Play观察到三状态,最大根/身体倾角3.504°,逻辑根固定;结束已回编辑模式。静态四向、Walk四相位、Idle中段、Attack蓄力/释放/恢复四向近景均已核对,鬃毛与尾簇未见明显拉扯。

X=140独立Additive场景包含Static/Idle/Walk/Attack/Cycle五组。制作期间检测到其它敌人场景占用Play时先停止制作入口;用户明确允许退出后继续,保留其它场景。并排截图发现旧Attack姿势缓存,Capture现从正式Prefab在隔离PreviewScene建立新实例并采样,截图显示正确施法峰值,原场景与轮播不被暂停/改写。

调用与复现

Animator在Model节点:Motion Int 0=Idle、1=Walk;Attack Trigger触发一次火焰施法。Attack在0.6秒发送OnCompanionAttackImpact;接收器需位于Animator节点或转发。真实扇形火焰特效、音效、双/三目标伤害、灼烧表现与关卡简模替换仍由技能系统接入。

python Tools/character_animation_pipeline.py --recipe Config/Art/Companions/FlameLion.json --build-review --play-check
# 需要重新绑骨时明确远程,禁止复用本机诊断
python Tools/rig_character_source.py --source Tools/output/flamelion_3d/flamelion.glb --out Tools/output/flamelion_dgx/high_rig --generate --backend remote

完整标准入口及最终隔离截图方法均已执行通过。8项Python流程保护测试、制作/QA/截图C#实际编译执行、火喵只读回归通过。初始FlameLion.draft.json仍boneMappingReady=false,仅为禁用历史草稿。

报告位于Tools/output/companions/FlameLion:production_manifest.json、verification.txt、walk_verification.txt、play_verification.txt、walk_processing.txt、motion_processing.txt、FlameLion_Rigged.skin.json;last_failure.txt保留已修正的25%Walk抬脚诊断,最终状态以validated清单与verification为准。资源登记Picture/Model/Animation/Config,总清单追加静态与伙伴两项,仅ValidateOnly,不重建总场景。