﻿# 《秘法共鸣》美术资产生产规范（Minecraft Java 1.20.1 Forge）

## 0. 范围与数据基线

本规范基于以下真实源文件建立：`staves.csv`、`spells.csv`、`robes.csv`、`bosses.csv`。

- `staves.csv`：72把法杖，覆盖 8 个已落地法杖流派（火焰、冰霜、雷霆、风暴、地脉、生命、暗影、奥术）。
- `spells.csv`：132个法术，覆盖 11 个完整流派视觉语言。
- `robes.csv`：63套法袍，其中通用 8 套、专精 55 套。
- `bosses.csv`：36场Boss遭遇，其中原创 22 场、第三方映射候选 14 场。
- 资产清单执行口径：原创Boss按“可独立生产的实体资产”计数，因此将 **奔雷双生祭司** 与 **创生与枯萎双生神** 各拆分为 2 个独立Boss资产任务，总计 **24 个原创Boss资产**。

### 命名与流派别名统一

- **寒冰 = 冰霜**：CSV 中法术/法袍/Boss 使用“寒冰”，法杖使用“冰霜”。
- **雷电 = 雷霆**：CSV 中法术/法袍/Boss 使用“雷电”，法杖使用“雷霆”。
- **大地 = 地脉**：CSV 中法术/法袍/Boss 使用“大地”，法杖使用“地脉”。
- 资源目录、导出文件名、代码枚举统一使用 canonical code：`fir/ice/lgt/wnd/ert/lif/shd/arc/tim/voi/chs`。

## 1. 总体美术语言：西幻 × Minecraft 像素/方块

### 1.1 视觉原则

1. **先轮廓，后细节。** 任何武器、法袍、Boss 在 16–24 格外必须先靠 silhouette 被认出来，再靠贴图识别流派。
2. **西幻气质，但不写实。** 保留法冠、肩饰、披风、法环、圣像、符文、仪式感；避免照片级材质、过度金属高光、复杂PBR错觉。
3. **Minecraft 方块语汇优先。** 外形以长方体、楔形、台阶、梯形、折线为主；不做高密圆柱，不靠法线伪装精细雕刻。
4. **像素块面要能数得清。** 贴图用 3–5 阶明度分层，避免柔焦渐变；同一资产主材质控制在 2–3 种。
5. **发光是强调，不是底色。** 常规发光面积≤可见面积 15%，中后期/终局 ≤20%；大招瞬时可到 30%，但不常驻。
6. **危险技能优先读得懂。** 特效宁可少一层炫技，也不能牺牲地贴半径、前摇方向和安全区边界。

### 1.2 体块与像素细化规则

- 外轮廓优先使用 0° / 45° / 90° 变化；特殊资产可用 22.5°，但只用于终局强调。
- 贴图噪点密度：`学徒~前期` 每 16×16 区域不超过 8 个高对比噪点；`中后期~终局` 不超过 12 个。
- 金边、法纹、缝线统一按 **1px 主线 + 1px 阴影/高光** 做，不用 2px 粗边把资产做成海报风。
- Boss、法杖、法袍都必须保留 **Minecraft 原生远景可读性**：不要依赖半透明特效才能看出朝向。

## 2. 十一流派配色与形状语言

| 流派 | CSV别名 | 主/辅/强调色 | 形状语言 | 主材质 | 动势 | 危险技能可读形状 |
|---|---|---|---|---|---|---|
| 火焰 | 无 | #C63A24 / #FF8A2B / #561A14 | 尖角、分叉火舌、裂焰三角 | 焦黑木、铜、焦曜石 | 上冲、喷射、爆裂 | 外环火舌+内核爆点 |
| 寒冰 | 冰霜 | #DFF4FF / #6EC8FF / #8A9FB8 | 六角、冰棱、镜面对称 | 霜丝、冰晶、银 | 生长、冻结、碎裂 | 雪晶边框+裂冰扇面 |
| 雷电 | 雷霆 | #243A7A / #FFE15A / #46B7A7 | 折线、叉状、线圈环 | 铜、绝缘黑曜、导电丝 | 跳跃、分叉、骤停 | 折线地贴+落雷光柱 |
| 风暴 | 无 | #EAF8FF / #6FD6C2 / #62A9FF | 燕尾、新月、螺旋涡带 | 羽纱、轻银、芦纤 | 环绕、抬升、拉扯 | 旋涡圈+流向箭头 |
| 大地 | 地脉 | #5E6660 / #7FA85F / #9B6BD6 | 梯形、层岩台阶、晶簇楔形 | 岩片、苔布、晶体 | 抬升、坍缩、脉冲 | 断层裂纹+块状抬边 |
| 生命 | 无 | #7DCE69 / #F4F0D8 / #E1B95C | 芽叶、花冠、藤蔓缠绕 | 活藤、叶片、花金 | 生长、脉动、扩散 | 花萼圈+根须伸展 |
| 暗影 | 无 | #14141C / #5D3E7A / #C9D0D8 | 破碎弧、眼睑、钩爪裂口 | 吸光绒、骨扣、冷银 | 渗出、折返、吞没 | 闭眼纹+裂口投影 |
| 奥术 | 无 | #29439B / #E056D3 / #F5FBFF | 圆环、棱镜、星轨网格 | 星砂、水晶、符文金属 | 环绕、序列展开、折射 | 几何法阵+星轨节点 |
| 时间 | 无 | #C6A24C / #E8D9A2 / #243C79 | 沙漏、刻度环、偏轴钟摆 | 时砂、古金、夜蓝釉 | 停顿、回拉、分帧残像 | 刻度圈+沙漏倒置 |
| 虚空 | 无 | #070A12 / #6B47A8 / #58C8D5 | 缺口圆、引力井、向内卷曲 | 黑晶、无光布、冷青边缘 | 吸入、扭曲、位面撕裂 | 破环+向心网格 |
| 混沌 | 无 | #151520 / #FF4FD8 / #FFD36B | 错位多边形、噪声裂片、左右不对称 | 拼布、裂片金属、失配宝石 | 乱序、跳变、洗牌 | 错位边框+随机片段闪现 |

### 2.1 通用流派混搭规则

- **通用套装** 不抢专精流派主色，常驻使用藏蓝、灰白、羊皮、书页金属；发光只允许奥术白/淡金。
- 混搭构筑时，主流派色占 70%，副流派色占 20%，中性色占 10%。
- 跨流派反应特效（如融化、热震、时爆、湮灭）必须保留 **双流派信息**：主伤害色为先、反应边框为后。

## 3. 贴图与分辨率规范

### 3.1 统一分辨率表

| 资产类型 | 常规分辨率 | 高阶分辨率 | 说明 |
|---|---|---|---|
| 法杖物品贴图 | 32×32 | 64×64 | 学徒/前期默认32；中期以上可用64；必须保留像素台阶感 |
| 法杖发光遮罩 | 32×32 | 64×64 | 单独文件，不把发光直接烘进主贴图 |
| 法袍部件贴图 | 64×64 | 128×128 | 终局、Boss掉落套可升到128；仍保持低频大块面 |
| 法袍披风/飘带附图 | 64×32 | 128×64 | 只给附属布料，不为每件衣服单开整套高模贴图 |
| Boss实体贴图 | 128×128 | 128×256 | XL体型允许128×256；严禁超大无意义空白图 |
| 法术粒子图集 | 32×32 / 64×64 | 128×128 | 终局仪式、大型领域才允许128 |
| UI图标源文件 | 32×32 | 64×64 | 游戏中落到16×16显示；源文件需保留1px安全边 |

### 3.2 像素绘制约束

- 允许轻微抖动线，但不能把材质做成噪点地毯。
- 同一流派单张贴图建议控制在 **16–32 个实际用色** 内；终局Boss可放宽到 40 色以内。
- 半透明只用在：冰晶、幽影薄纱、奥术护罩、虚空奇点边缘、召唤法阵余辉；不做大面积果冻质感。
- 发光遮罩必须只覆盖 **符文、核心、眼、裂缝、法环边** 等功能位，不能整件资产满屏泛光。

## 4. 模型预算：方块数 / 三角面 / 骨骼

### 4.1 法杖预算

| 阶段 | cubes建议 | 估算tris上限 | 活动件 | 说明 |
|---|---:|---:|---:|---|
| 学徒 | 24–32 | 180 | 0–1 | 练习杖重轮廓，不堆特效挂件 |
| 前期 | 28–36 | 220 | 1 | 加入分支识别的杖头/副件 |
| 前中期 | 32–42 | 280 | 1–2 | 允许小型漂浮件或转环 |
| 中期 | 36–48 | 360 | 2–3 | 构筑型法杖开始有展开/收束件 |
| 中后期 | 42–56 | 460 | 3–4 | 名杖可做显著冠饰与悬浮核心 |
| 后期/终局 | 48–64 | 560 | 4–6 | 终局杖允许多层展开，但仍需像素化块面 |

### 4.2 法袍预算

- **基础规则：** 一套法袍 = **1套共享Humanoid骨架** + 部件/披风/飘带子件，不把 63 套虚增成 252 套完全独立模型。
- **额外骨骼预算：** 12–24 根（披风 4–8、飘带 4–8、帽穗/挂件 2–8）。
- **允许的附属件：** 帽檐、冠饰、肩片、腰封、披风、披肩、飘带、法环挂件。
- **禁止：** 为单个鞋子或裤脚建立过多独立链条；玩家移动中会产生低价值穿模与性能浪费。

### 4.3 Boss预算

| 尺寸级别 | 高度 | 估算tris | bones | 典型用途 |
|---|---|---:|---:|---|
| S | 1.8–2.4格 | 900–1400 | 22–35 | 近战教学、精英体、轻体型飞妖 |
| M | 2.6–3.6格 | 1200–2200 | 30–55 | 人形法师、祭司、猎犬王、女妖 |
| L | 4–6格 | 2200–3600 | 45–80 | 魔像、狮鹫、雄鹿、重甲审判官 |
| XL | 6–10格 | 3600–5200 | 70–120 | 编年龙、双生神、终局首领 |

> 终局Boss可以大，但必须把读屏优先级让给 **朝向、弱点、前摇手势、危险区域**。不允许为了大而大。

## 5. 法杖握持与第一人称尺寸规范

### 5.1 握持尺寸

- 法杖总长建议 **28–36 model units**；终局名杖可到 40，但第一人称仍不能侵入准星区。
- 握把区长度 **6–8 units**，位于法杖底端向上 20%–30% 位置。
- 握把直径建议 **2–3 units**；超过 3 会显得像锤柄，不像法杖。
- 杖头最大宽度不超过法杖总长的 **35%**；避免视觉重心过度上飘。

### 5.2 第一人称显示模板

- 推荐 `firstperson_righthand` 初始值：`rotation [0, -92, 25]`、`translation [1.2, 3.0, 1.2]`、`scale [0.72, 0.72, 0.72]`。
- 推荐 `thirdperson_righthand` 初始值：`rotation [0, -90, 55]`、`translation [0, 2.5, 1.5]`、`scale [0.82, 0.82, 0.82]`。
- 杖头默认落在屏幕 **右上 35% 区域**；不可长期压住屏幕中心 40% 宽的瞄准区。
- 充能动画只允许 **后坐、上抬、发光**，不允许把整个杖头甩到准星中央遮挡敌人前摇。

## 6. 法袍分层、披风与飘带规范

### 6.1 四部件贴图策略

- 一套法袍只建立 **1套共享身体模板**，再输出四件可装备部位：`head / chest / legs / boots`。
- 贴图命名按部位拆分，但允许共用 atlas：
  - `*_head.png`
  - `*_chest.png`
  - `*_legs.png`
  - `*_boots.png`
  - `*_trim_emissive.png`
  - `*_cape.png`（有披风时）
- 允许复用基础裁片，但 **头饰轮廓、肩线、披风裁片、腰封符号** 必须决定套装辨识度。

### 6.2 分层顺序

1. 基础内衬：原版体型贴合层。
2. 结构层：肩片、裙摆外扩、胸甲布片、腰封。
3. 次级布料：披风、披肩、长摆、飘带。
4. 发光层：法纹、边饰、悬浮扣件、终局冠饰。

### 6.3 披风/飘带约束

- 披风根骨挂在 `upper_back`；飘带挂在 `belt_left / belt_right / shoulder_back`。
- 常态下披风长度建议不超过脚踝上缘 2px，避免蹲伏时整块穿入地面。
- 飘带数量常规 **2–4 条**；混沌、风暴、时间可以到 6 条，但必须区分长短与优先级。
- 若与鞘翅/大型背部挂件冲突，披风自动切为短款或隐藏次级骨骼。

## 7. Boss尺寸分级与舞台关系

### 7.1 尺寸分级

- **学徒~前期**：S/M 为主；让玩家看得懂手势和前摇。
- **前中期~中期**：M/L 为主；开始有纵向空间与局部部位弱点。
- **中后期~终局**：L/XL 为主；允许多段变形、飞行段、法阵展开，但碰撞体与视觉边界仍要对齐。

### 7.2 原创Boss资产计数规则

`bosses.csv` 的原创遭遇是 22 场，但生产上按实体资产拆为 24 个：

- `AR_BOSS_015 奔雷双生祭司` → **正极祭司 / 负极祭司** 两个独立模型。
- `AR_BOSS_036 创生与枯萎双生神` → **创生双生神 / 枯萎双生神** 两个独立模型。

这样才能真实覆盖建模、贴图、动作与独立读屏需求。

## 8. 法术粒子与危险技能可读性

### 8.1 基础规则

- **玩家有利效果**：用流派主色，允许柔和边缘。
- **敌方危险效果**：在流派主色外，必须再叠 **白色高亮边 + 深色投影边**。
- 所有地贴半径与伤害判定偏差必须 ≤ **0.25格**。
- 直线/扇形技必须在前摇阶段就给出 **方向信息**，而不是只在命中时爆发。

### 8.2 形状编码（必须同时用于Boss危险技和高阶法术）

- **圆环** = 范围爆发 / 落点AOE
- **长条/箭矢** = 冲锋 / 射线 / 贯穿
- **扇面** = 正面扫击 / 锥形吐息
- **螺旋/向心线** = 聚怪 / 吞吸 / 真空
- **沙漏/刻度圈** = 时间停滞 / 延迟爆发
- **破环/缺口圆** = 虚空裂隙 / 边界坍缩
- **错位多边形** = 混沌乱序 / 随机落点

### 8.3 前摇时长下限

| 危险级别 | 最短前摇 | 说明 |
|---|---:|---|
| 轻型弹体 | 0.25秒 | 仍需有抬手、法环或弹道预亮 |
| 中型范围技 | 0.45秒 | 地贴先亮外圈，再收束到中心 |
| 重型终结技 | 0.70秒 | 必须有视觉 + 音效双前摇 |
| 禁忌/终局机制技 | 1.00秒 | 必须给玩家学习窗口，不靠秒杀制造难度 |

### 8.4 粒子预算

- **低画质**：只保留地贴、核心弹体、命中爆点、治疗/危险标识。
- **中画质**：在低画质基础上增加拖尾、次级火花、少量环境粉尘。
- **高画质**：增加体积云、二次溅射、流向线、背景法环。
- 禁止让“高画质 = 更多遮挡”；高画质只能增强氛围，不能破坏读屏。

## 9. 动画帧率与状态规范

### 9.1 Authoring帧率

- **角色/Boss/法杖/法袍动画统一按 20fps 出关键帧**，与 Minecraft 20TPS 对齐。
- 需要更丝滑的粒子序列可按 12fps / 15fps / 20fps 绘制，但导出时要对齐 20TPS 节点。
- 禁止为了“更电影感”使用不稳定的非整数节拍，影响 hit frame 校对。

### 9.2 标准状态集

- **法杖**：`idle`、`charge_start`、`charge_loop`、`release`、`ultimate`。
- **法袍**：`idle_cloth`、`run_cloth`、`cast_glow`、`hit_react`、`hover_optional`。
- **Boss**：`idle`、`move`、`turn`、`cast_windup`、`cast_active`、`recover`、`stagger`、`enrage`、`death`。
- **召唤物/法阵**：`appear`、`loop`、`impact_or_end`。

### 9.3 动画口径

- 攻击前摇一定要有 **起势—蓄势—释放** 三段，不做“突然亮一下就结算”。
- 失衡状态应减少动作频率、降低发光、暴露弱点；不能只是站着发呆。
- 终局解放动画优先做 **轮廓变化**，其次再做满屏粒子。

## 10. 性能与 LOD 规范

### 10.1 距离分级

- 0–16格：完整模型、完整披风骨骼、完整粒子。
- 16–32格：关闭次级飘带骨骼；粒子减半；保留核心发光和地贴。
- 32–48格：Boss保留主轮廓、眼/核心发光、关键攻击法阵；关闭次级悬浮件。
- 48格外：只保留轮廓、Boss血条目标特效、最低限度危险区地贴。

### 10.2 粒子与布料预算

- 普通法术单次峰值粒子建议 ≤ 80。
- 大型领域单秒常驻粒子建议 ≤ 120；禁忌/终局瞬时可更高，但持续不超过 2 秒。
- 法袍只做骨骼摆动，不做实时布料模拟。
- Boss多段发光必须用遮罩切换，不用同屏多层全屏 additive 叠爆。

## 11. 无障碍：颜色、音效、闪烁与提示

### 11.1 色觉友好

- 禁止仅靠 **红/绿** 区分友伤与治疗；必须再加形状差异：
  - 治疗：圆润、花瓣、上扬
  - 危险：尖角、裂纹、向心压缩
- 寒冰/虚空都偏冷色，必须用 **几何形状** 区分：寒冰是六角/对称，虚空是破环/内卷。
- 雷电/时间都可能用金色高亮，时间必须搭配刻度与沙漏元素。

### 11.2 音效提示

- 任何危险大招必须同时有 **独立前摇音**。
- 建议音高语义：
  - 治疗/增益：上行
  - 危险聚能：持续拉长低频
  - 反制成功：清脆短促
  - 失衡窗口：短时抽空/断奏
- 字幕标签使用 `AR_` 前缀，如：`AR_BOSS_WARNING_FIRE`、`AR_HEAL_TRIGGER`。

### 11.3 闪烁安全

- 全屏高亮闪烁避免进入明显 3–30Hz 频段。
- 终局爆发可亮，但不得连续高对比爆闪刷屏。
- 提供“减少屏幕震动”“减少粒子闪烁”“高对比危险边框”三个开关。

## 12. GeckoLib / Blockbench 导出规范

### 12.1 坐标与骨骼

- 单位：**16 units = 1 block**。
- 方向：**Y up**，正面统一朝 **+Z**（团队内部如已有相反约定，导出前必须批量统一）。
- 每个资产只有一个 `root`，再往下是结构骨骼。
- 禁止负缩放、冻结前未归零、重复骨骼名、中文骨骼名。
- 骨骼/动画/贴图文件名一律 **lower_snake_case**。

### 12.2 导出文件

- 几何：`*.geo.json`
- 动画：`*.animation.json`
- 发光贴图：`*_emissive.png`
- 伤损/阶段mask：`*_damage_mask.png` / `*_phase_mask.png`
- 验证顺序：Blockbench预览 → GeckoLib挂接 → 游戏内第一/第三人称 → 联机同步检查。

### 12.3 事件标记

- 动画事件统一使用：`sfx_`、`vfx_`、`spawn_`、`hit_`、`ui_` 前缀。
- 示例：`sfx_staff_release`、`vfx_boss_ring_expand`、`hit_shatter_window_open`。

## 13. 命名与目录规范

```text
assets/arcane_resonance/
├─ geo/
│  ├─ staves/<source_id>.geo.json
│  ├─ robes/<source_id>.geo.json
│  └─ bosses/<source_id>.geo.json
├─ animations/
│  ├─ staves/<source_id>.animation.json
│  ├─ robes/<source_id>.animation.json
│  └─ bosses/<source_id>.animation.json
├─ textures/
│  ├─ item/staves/<school_code>/<source_id>.png
│  ├─ models/robes/<school_code>/<source_id>_head.png
│  ├─ models/robes/<school_code>/<source_id>_chest.png
│  ├─ models/robes/<school_code>/<source_id>_legs.png
│  ├─ models/robes/<school_code>/<source_id>_boots.png
│  ├─ entity/bosses/<school_code>/<source_id>.png
│  ├─ vfx/spells/<school_code>/<spell_slug>_atlas.png
│  └─ gui/<category>/<source_id>.png
├─ particles/
│  └─ <spell_slug>.json
└─ lang/
   └─ zh_cn.json
```

### 13.1 资产ID规则

- Manifest中的资产ID格式：
  - `ART_STAFF_<source_id>`
  - `ART_ROBE_<source_id>`
  - `ART_VFX_<namespace_spell_slug>`
  - `ART_BOSS_<source_id>` 或 `ART_BOSS_<source_id>_<suffix>`
  - `ART_COLLAB_<source_id>`
- Source ID 永远以 CSV 为准，不得手改重命名。
- 第三方映射Boss **禁止** 创建自制实体模型目录；只允许写入 `textures/gui/`、`textures/vfx/`、`textures/item/` 相关联动资产。

## 14. 最终验收清单

1. **风格验收**：是否符合“西幻仪式感 + Minecraft块面像素感”。
2. **读屏验收**：16格外能否识别流派、功能、危险方向。
3. **性能验收**：低/中/高粒子三档都能玩，Boss不开全屏烟花。
4. **技术验收**：Blockbench、GeckoLib、游戏内持握、联机同步一致。
5. **可访问性验收**：颜色不是唯一信息源；有音效前摇与形状编码。
6. **命名验收**：文件名、目录、Manifest、CSV源ID 一一对应。
