merge: 同步 master d5f95e7f(art/ 边界批)——三处冲突=对方 art 改名/迁移 vs 我方路径重基准,取对方内容改动+按新落位换算路径(comfyui-prompts→art-prompts、美术审计件迁 research/)
This commit is contained in:
commit
d6356d8dbe
16 files changed
+61
-32
No files matched your search
@@ -25,9 +25,13 @@
|
|||||||
## Project Layout
|
## Project Layout
|
||||||
|
|
||||||
- `design/gdd/` — 现行设计文档树(根索引 `02-系统清单.md`,文档增删必须同步;`gdd/ux/` 战斗画面与交互规格)
|
- `design/gdd/` — 现行设计文档树(根索引 `02-系统清单.md`,文档增删必须同步;`gdd/ux/` 战斗画面与交互规格)
|
||||||
- `design/art/` — 美术纯文档(圣经/清单/提示词卡 + references/);评估调研归 `design/research/`;不放图片
|
- `design/art/` — 美术文档(圣经/角色设计/两份清单/路径图/提示词库与生图操作单);只放 .md 与 `references/` 参考图,审计报告与调研归 `design/research/`
|
||||||
- `design/dev/` — 工程规范(五份规约 + architecture + engine-reference)
|
- `design/dev/` — 工程规范(五份规约 + architecture + engine-reference)
|
||||||
|
<<<<<<< HEAD
|
||||||
- `design/research/` — 调研/提案/评估/历史验收(中间文档暂存地,入内文件到期即死;**需求卡片不在此,落 `reports/`**);`design/qa/` 已退役,验证截图不进 `design/`(判据见 doc-conventions §11)
|
- `design/research/` — 调研/提案/评估/历史验收(中间文档暂存地,入内文件到期即死;**需求卡片不在此,落 `reports/`**);`design/qa/` 已退役,验证截图不进 `design/`(判据见 doc-conventions §11)
|
||||||
|
=======
|
||||||
|
- `design/research/` — 调研/提案/评估/审计报告/历史验收(中间文档唯一暂存地,入内文件到期即死);`design/qa/` 已退役,验证截图不进 `design/`(判据见 doc-conventions §11)
|
||||||
|
>>>>>>> master
|
||||||
- `artwork/` — 在途图像素材唯一工作区(文档归文档/在途图归一处/终稿归游戏);整目录不入 git(.gitignore 强制),收口归档 `archive/`
|
- `artwork/` — 在途图像素材唯一工作区(文档归文档/在途图归一处/终稿归游戏);整目录不入 git(.gitignore 强制),收口归档 `archive/`
|
||||||
- `game/assets/art/` — 已验收终稿(入包被游戏加载);`game/` — 游戏工程本体(代码 + smoke/ 冒烟 + tests/ 单元集成)
|
- `game/assets/art/` — 已验收终稿(入包被游戏加载);`game/` — 游戏工程本体(代码 + smoke/ 冒烟 + tests/ 单元集成)
|
||||||
- `sim-data/` — 机器读数据产物;数据件不入 git(入库例外 = README+analyze.py+growth_model.py);MC 锚与读数常驻留盘,无数值调整禁重跑
|
- `sim-data/` — 机器读数据产物;数据件不入 git(入库例外 = README+analyze.py+growth_model.py);MC 锚与读数常驻留盘,无数值调整禁重跑
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
| 渠道 | 出什么 | 先例 |
|
| 渠道 | 出什么 | 先例 |
|
||||||
|---|---|---|
|
|---|---|---|
|
||||||
| ♻ **素材站复用(轻改)** | UI 九宫格面板与按钮、字体、通用粒子与光效、通用图标、无缝纹理底噪 | 无(2026-09-23 本批立渠道);来源偏好 CC0(如 Kenney 全站、OpenGameArt 标 CC0 件、itch.io 免费包) |
|
| ♻ **素材站复用(轻改)** | UI 九宫格面板与按钮、字体、通用粒子与光效、通用图标、无缝纹理底噪 | 无(2026-09-23 本批立渠道);来源偏好 CC0(如 Kenney 全站、OpenGameArt 标 CC0 件、itch.io 免费包) |
|
||||||
| ✦ **ComfyUI(用户自跑)** | 角色、插画级素材;每个敌种/主角建议出 **2–3 版候选**供裁决,不直接出终稿 | 主角站姿样张(2026-09-16 脚本管线产物,源文件已清理);提示词规格卡 comfyui-prompts.md **v2.0 已重生成**(2026-09-22,美术圣经 §5 落地后正序重生;v1.0 移除决策归状态记录 125) |
|
| ✦ **ComfyUI(用户自跑)** | 角色、插画级素材;每个敌种/主角建议出 **2–3 版候选**供裁决,不直接出终稿 | 主角站姿样张(2026-09-16 脚本管线产物,源文件已清理);提示词规格卡 art-prompts.md **v2.0 已重生成**(2026-09-22,美术圣经 §5 落地后正序重生;v1.0 移除决策归状态记录 125) |
|
||||||
| ⚙ **脚本管线(代理出)** | 图标、格面、样张类精度资产 | 格面占位渲染与程序化徽标(现行) |
|
| ⚙ **脚本管线(代理出)** | 图标、格面、样张类精度资产 | 格面占位渲染与程序化徽标(现行) |
|
||||||
|
|
||||||
**通用规格纪律**:
|
**通用规格纪律**:
|
||||||
@@ -59,7 +59,7 @@
|
|||||||
|
|
||||||
## 2. P1 —— 角色级(样张通过后开工,ComfyUI)
|
## 2. P1 —— 角色级(样张通过后开工,ComfyUI)
|
||||||
|
|
||||||
> 提示词规格卡 comfyui-prompts.md 已于 2026-09-22 按「圣经 §5 落地后重生成」拍板重写为 **v2.0**(主角三态+八敌种,逐资产自包含完整提示词,整段可直贴);v1.0 移除决策归状态记录 125 完成登记(production/session-state/active.md)。
|
> 提示词规格卡 art-prompts.md 已于 2026-09-22 按「圣经 §5 落地后重生成」拍板重写为 **v2.0**(主角三态+八敌种,逐资产自包含完整提示词,整段可直贴);v1.0 移除决策归状态记录 125 完成登记(production/session-state/active.md)。
|
||||||
|
|
||||||
### 2.1 主角战斗小人
|
### 2.1 主角战斗小人
|
||||||
|
|
||||||
|
|||||||
@@ -500,7 +500,7 @@
|
|||||||
- **归档纪律(2026-10-06 P0-1 用户口径写入文档)**:图片素材**不入 git 版本管理**——仓库只保留运行时引用资产(game/assets);生成链路原始产物(AI 原图/中间产物/候选版本)归档至 `archive/` 并择机上对象存储备份;主文档(圣经/GDD/清单)**禁引用 artwork/ 散文件路径**——定稿成图以 game/assets 为唯一事实源,过程稿引用一律用归档包路径或描述性出处。
|
- **归档纪律(2026-10-06 P0-1 用户口径写入文档)**:图片素材**不入 git 版本管理**——仓库只保留运行时引用资产(game/assets);生成链路原始产物(AI 原图/中间产物/候选版本)归档至 `archive/` 并择机上对象存储备份;主文档(圣经/GDD/清单)**禁引用 artwork/ 散文件路径**——定稿成图以 game/assets 为唯一事实源,过程稿引用一律用归档包路径或描述性出处。
|
||||||
- **入包与对账检查器(2026-10-06 P2 固化挂点——本批只立挂点,实现随 PRD 工具批)**:①**色板检查器**——扫描新素材色板,报新增色/近色告警/超 §4.1 上限(48)拦截,挂素材流入包步(asset-path-map §2 第 3 步);②**路径核对器**——扫描 asset-path-map 声明的全部路径,悬空/退役未清即报,随大批与审计例行跑(2026-10-06 三处悬空即此类失守);③**standee_asset_check 硬闸升级规格**(审计 §07-2/3)——按 §8.2 逐键定档校验体量与档高(现「宽 1–75」虚设区间退役)、像素域色数 ≤32、无非整数倍缩放痕迹、描边亮度达标(亮描边明度档,§8.2 描边层级);把 v3.6「高定宽随」教训变成代码闸而非文字。
|
- **入包与对账检查器(2026-10-06 P2 固化挂点——本批只立挂点,实现随 PRD 工具批)**:①**色板检查器**——扫描新素材色板,报新增色/近色告警/超 §4.1 上限(48)拦截,挂素材流入包步(asset-path-map §2 第 3 步);②**路径核对器**——扫描 asset-path-map 声明的全部路径,悬空/退役未清即报,随大批与审计例行跑(2026-10-06 三处悬空即此类失守);③**standee_asset_check 硬闸升级规格**(审计 §07-2/3)——按 §8.2 逐键定档校验体量与档高(现「宽 1–75」虚设区间退役)、像素域色数 ≤32、无非整数倍缩放痕迹、描边亮度达标(亮描边明度档,§8.2 描边层级);把 v3.6「高定宽随」教训变成代码闸而非文字。
|
||||||
- **交付格式**:PNG 透明底;动画 = 序列帧或引擎精灵表(SpriteFrames),帧尺寸恒定、横向等宽排列(候选)。
|
- **交付格式**:PNG 透明底;动画 = 序列帧或引擎精灵表(SpriteFrames),帧尺寸恒定、横向等宽排列(候选)。
|
||||||
- **命名规范(候选草案)**:`<域>_<对象键>_<状态|变体>[_<序号>].png`,全小写 snake_case;**对象键 = 数据表主键**(effect_id/reward_id/cell_type/enemy_id——图标键契约 §4.6 的文件侧延伸:资产文件名键 = 图标键,全局恒定禁运行时换图);图类型变体后缀 = board_type 键(`_dungeon`/`_underdark`/`_deep_underdark`);候选评审件与终稿分目录(`candidates/` 承载评审件)。
|
- **命名规范(候选草案)**:`<域>_<对象键>_<状态|变体>[_<序号>].png`,全小写 snake_case;**对象键 = 数据表主键**(effect_id/reward_id/cell_type/enemy_id——图标键契约 §4.6 的文件侧延伸:资产文件名键 = 图标键,全局恒定禁运行时换图);图类型变体后缀 = board_type 键(`_dungeon`/`_underdark`/`_deep_underdark`);候选评审件与终稿分目录(`artwork/candidates/` 承载评审件)。
|
||||||
|
|
||||||
### 8.4 帧数规格(样张 v2 冻结 2026-09-28)
|
### 8.4 帧数规格(样张 v2 冻结 2026-09-28)
|
||||||
|
|
||||||
|
|||||||
@@ -9,10 +9,10 @@
|
|||||||
## 0. 使用流程(五步)
|
## 0. 使用流程(五步)
|
||||||
|
|
||||||
1. **出图**:按下面卡片把正向/负向提示词粘进生图渠道的提示词栏(**渠道 = 远程对话式生图为主,本地 ComfyUI 为备选**——2026-10-06 拍板;对话操作纪律见 [remote-gen-prompts](remote-gen-prompts.md)),每个资产出 **2–3 版候选**(建议固定 3 个 seed 连拍,便于横评)。
|
1. **出图**:按下面卡片把正向/负向提示词粘进生图渠道的提示词栏(**渠道 = 远程对话式生图为主,本地 ComfyUI 为备选**——2026-10-06 拍板;对话操作纪律见 [remote-gen-prompts](remote-gen-prompts.md)),每个资产出 **2–3 版候选**(建议固定 3 个 seed 连拍,便于横评)。
|
||||||
2. **入库**:候选原图(带底)放 `design/art/candidates/<资产名>/`,文件名 `v1.png / v2.png / v3.png`。这个目录只存候选,不进引擎。
|
2. **入库**:候选原图(带底)放 `artwork/candidates/<资产名>/`,文件名 `v1.png / v2.png / v3.png`。这个目录只存候选,不进引擎。
|
||||||
3. **裁决**:你按 §4 验收速查预筛,挑出每一资产的入围候选拍板。
|
3. **裁决**:你按 §4 验收速查预筛,挑出每一资产的入围候选拍板。
|
||||||
4. **后处理**:喊我一声,脚本管线代跑——去底转透明、最近邻降采样到目标尺寸、色板量化、四联底测试条(掩尘底/裸土底/暗底/灰度)。
|
4. **后处理**:喊我一声,脚本管线代跑——去底转透明、最近邻降采样到目标尺寸、色板量化、四联底测试条(掩尘底/裸土底/暗底/灰度)。
|
||||||
5. **转正**:终稿从 candidates 转入切片资产目录,随表现层升级批接线;清单状态列改「已交付」。
|
5. **转正**:终稿从 `artwork/candidates/` 转入切片资产目录,随表现层升级批接线;清单状态列改「已交付」。
|
||||||
|
|
||||||
**出图通道(2026-09-23 定稿)**:线上 API,用户自跑——本地 ComfyUI 生图路线已经用户拍板**彻底关闭**(母版工作流/像素 LoRA/Z-Image 模型已清退,不留复活预案,本卡不依赖任何本地管线)。
|
**出图通道(2026-09-23 定稿)**:线上 API,用户自跑——本地 ComfyUI 生图路线已经用户拍板**彻底关闭**(母版工作流/像素 LoRA/Z-Image 模型已清退,不留复活预案,本卡不依赖任何本地管线)。
|
||||||
|
|
||||||
@@ -17,8 +17,8 @@
|
|||||||
|
|
||||||
| 素材 | 状态 | 需求文档 |
|
| 素材 | 状态 | 需求文档 |
|
||||||
|---|---|---|
|
|---|---|---|
|
||||||
| 主角战斗小人(待机/攻击/受击三态) | ✅ B区站桩三态全接(2026-09-29 迭代 6 T3:normal/attack/hit 48px 档入包+挂事件切换+结算回 idle,短驻自回;棋盘 1.5×/脚锚25%/椭圆影在役不变;hit 态源=new-hit.pxo 已程序导出) | [character-design](character-design.md) + [comfyui-prompts](comfyui-prompts.md) §2 |
|
| 主角战斗小人(待机/攻击/受击三态) | ✅ B区站桩三态全接(2026-09-29 迭代 6 T3:normal/attack/hit 48px 档入包+挂事件切换+结算回 idle,短驻自回;棋盘 1.5×/脚锚25%/椭圆影在役不变;hit 态源=new-hit.pxo 已程序导出) | [character-design](character-design.md) + [art-prompts](art-prompts.md) §2 |
|
||||||
| 八敌种形象(L2 熊地精=bugbear 复用,不单列) | ✅ B区站桩八敌真图服役(2026-09-29 迭代 6 T1/T2:pixel-1 源→48px 档统一比例/底中锚/众数投票降采样,character_enemy_<键>.png 按常量入位,字形回退退役为缺位兜底;素材不入 git 本地在盘)。**2026-10-06 v3.7 定档批注记**:八敌源档已定(36–94,art-bible §8.2),旧统一 48 档在役过渡,新档重产落位归 PRD(tools/pixelize_candidates.py `STANDEE_TIER_H` 已改,产出与定档总图一致) | [art-bible](art-bible.md) §5 + [comfyui-prompts](comfyui-prompts.md) §3 |
|
| 八敌种形象(L2 熊地精=bugbear 复用,不单列) | ✅ B区站桩八敌真图服役(2026-09-29 迭代 6 T1/T2:pixel-1 源→48px 档统一比例/底中锚/众数投票降采样,character_enemy_<键>.png 按常量入位,字形回退退役为缺位兜底;素材不入 git 本地在盘)。**2026-10-06 v3.7 定档批注记**:八敌源档已定(36–94,art-bible §8.2),旧统一 48 档在役过渡,新档重产落位归 PRD(tools/pixelize_candidates.py `STANDEE_TIER_H` 已改,产出与定档总图一致) | [art-bible](art-bible.md) §5 + [art-prompts](art-prompts.md) §3 |
|
||||||
| 意图准备动画三档 | ◐ | [art-bible](art-bible.md) §4.6.4 |
|
| 意图准备动画三档 | ◐ | [art-bible](art-bible.md) §4.6.4 |
|
||||||
|
|
||||||
## P2 图标与格面(可与样张并行)
|
## P2 图标与格面(可与样张并行)
|
||||||
|
|||||||
@@ -7,19 +7,19 @@
|
|||||||
|
|
||||||
| 路径 | 角色 | 入 git | 游戏运行时引用 |
|
| 路径 | 角色 | 入 git | 游戏运行时引用 |
|
||||||
|---|---|---|---|
|
|---|---|---|---|
|
||||||
| `design/art/candidates/**` | 设计侧源档(母版 PNG/.pxo/GIF/对比图/验收留底)——**素材的原产地与档案库,游戏禁直接引用**。**目录按需创建**(首批候选入库时建,2026-10-06 对账注:当前两 worktree 均未建立,非路径作废) | 否(`.gitignore` 三行规则;`*.md` 指引例外) | **禁**(res:// 路径禁指 candidates) |
|
| `artwork/candidates/**` | 候选原图与母版源档(PNG/.pxo/GIF/对比图/验收留底)——**素材的原产地,游戏禁直接引用**;随 `artwork/` 整目录不入 git(`design/art/candidates/` 已作废,路径列入熵增闸退役名单) | 否(`.gitignore` 三行规则;`*.md` 指引例外) | **禁**(res:// 路径禁指 candidates) |
|
||||||
| `game/assets/art/**` | **游戏运行时素材唯一落地处**(res://assets/art/...)——定稿素材从 candidates 拷贝入此,改名按圣经 §8.3 | 否(untracked,勿 git add;worktree 间需脚本拷贝同步) | **唯一合法引用源** |
|
| `game/assets/art/**` | **游戏运行时素材唯一落地处**(res://assets/art/...)——定稿素材从 `artwork/candidates/` 拷贝入此,改名按圣经 §8.3 | 否(untracked,勿 git add;worktree 间需脚本拷贝同步) | **唯一合法引用源** |
|
||||||
| `game/assets/ui/icons/**` | UI 图标(状态图标批特例——唯一已提交入 git 的素材目录) | **是**(2026-09-24 批特例) | 是 |
|
| `game/assets/ui/icons/**` | UI 图标(状态图标批特例——唯一已提交入 git 的素材目录) | **是**(2026-09-24 批特例) | 是 |
|
||||||
| `artwork/mockups/**` | 混合样张/版式对比图(设计评审产物,非游戏素材;样张 v3、关卡地图样张等实存于此)——2026-10-06 对账更正:原写的 `production/mockups/**` 系废路径 | 否 | 禁 |
|
| `artwork/mockups/**` | 混合样张/版式对比图(设计评审产物,非游戏素材;样张 v3、关卡地图样张等实存于此)——2026-10-06 对账更正:原写的 `production/mockups/**` 系废路径 | 否 | 禁 |
|
||||||
|
|
||||||
## 2. 素材流(新素材批标准路径)
|
## 2. 素材流(新素材批标准路径)
|
||||||
|
|
||||||
1. **产出/候选**:candidates 对应子目录(如 `hero-idle/`)
|
1. **产出/候选**:`artwork/candidates/` 对应子目录(如 `hero-idle/`)
|
||||||
2. **验收定稿**:用户拍板(候选目录留档不动)
|
2. **验收定稿**:用户拍板(候选目录留档不动)
|
||||||
3. **入包**:拷贝 → `game/assets/art/<语义子目录>/`,改名 `§8.3` 域键式(如 `character_hero_portrait.png`)
|
3. **入包**:拷贝 → `game/assets/art/<语义子目录>/`,改名 `§8.3` 域键式(如 `character_hero_portrait.png`)
|
||||||
4. **接线**:代码 `res://assets/art/...` 引用(路径常量单点归 `UiKit.TEX_*`);装载一律 `UiKit.load_tex`(exists 守卫——素材不入 git,缺位树回退),**禁 preload**
|
4. **接线**:代码 `res://assets/art/...` 引用(路径常量单点归 `UiKit.TEX_*`);装载一律 `UiKit.load_tex`(exists 守卫——素材不入 git,缺位树回退),**禁 preload**
|
||||||
5. **提交**:只提交代码/文档;PNG 与 `.import`(全局忽略)均不入 git
|
5. **提交**:只提交代码/文档;PNG 与 `.import`(全局忽略)均不入 git
|
||||||
6. **整理(2026-10-06 P2-1 固化段——脚本链第四段:生成→验证→整理→入包)**:定稿入包后当批清 candidates 子目录——保留**定稿源 + 最相邻候选 2 版**(默认策略,可按资产调整),其余打包归 `archive/`;非素材残留(.url/.ogg/.ai/.swf 等)剔出;批量执行一律 **dry-run 清单先行**,经用户确认再动文件(2026-10-06 用户惯例)
|
6. **整理(2026-10-06 P2-1 固化段——脚本链第四段:生成→验证→整理→入包)**:定稿入包后当批清 `artwork/candidates/` 子目录——保留**定稿源 + 最相邻候选 2 版**(默认策略,可按资产调整),其余打包归 `archive/`;非素材残留(.url/.ogg/.ai/.swf 等)剔出;批量执行一律 **dry-run 清单先行**,经用户确认再动文件(2026-10-06 用户惯例)
|
||||||
|
|
||||||
## 3. game/assets/art 语义子目录
|
## 3. game/assets/art 语义子目录
|
||||||
|
|
||||||
@@ -31,6 +31,6 @@
|
|||||||
|
|
||||||
## 4. 坐标/朝向等工程侧约定备查
|
## 4. 坐标/朝向等工程侧约定备查
|
||||||
|
|
||||||
- 素材基准朝向:角色/铲帧一律朝**左**入库,右向=运行时 `flip_h`(镜像帧不入包,right 变体留 candidates)
|
- 素材基准朝向:角色/铲帧一律朝**左**入库,右向=运行时 `flip_h`(镜像帧不入包,right 变体留 `artwork/candidates/`)
|
||||||
- 挥铲握把锚:画布 (18,12)(三帧同位——以手为圆心旋转的预烤相位)
|
- 挥铲握把锚:画布 (18,12)(三帧同位——以手为圆心旋转的预烤相位)
|
||||||
- 缩放纪律:圣经 §8.2 整数缩放为一般规则;棋盘小人 1.5× 系 2026-09-26 用户明示裁决(豁免注记归 art-bible 批另落)
|
- 缩放纪律:圣经 §8.2 整数缩放为一般规则;棋盘小人 1.5× 系 2026-09-26 用户明示裁决(豁免注记归 art-bible 批另落)
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
# 人物设计文档(Character Design)— Dungeon Sweeper
|
# 人物设计文档(Character Design)— Dungeon Sweeper
|
||||||
|
|
||||||
> **性质**:美术圣经 §5(角色设计)的独立承载文档——2026-09-23 抽离批自 art-bible v1.6 §5 迁出成文,动机是**人设高频改动、独立成档免动圣经**;圣经 §5 自此为引用存根指向本文件,**小节号 §5.1–§5.6 沿用不变**(跨文档引用经圣经 §5 存根仍可达,新引用直指本文件)。
|
> **性质**:美术圣经 §5(角色设计)的独立承载文档——2026-09-23 抽离批自 art-bible v1.6 §5 迁出成文,动机是**人设高频改动、独立成档免动圣经**;圣经 §5 自此为引用存根指向本文件,**小节号 §5.1–§5.6 沿用不变**(跨文档引用经圣经 §5 存根仍可达,新引用直指本文件)。
|
||||||
> **边界**:本文件只定角色呈现;角色承载的机制语义(护甲克制矩阵、技能与状态)以 GDD 为准(敌人系统/增益状态/战斗结算)。色彩系统、形状语言总纲引用美术圣经 [art-bible](art-bible.md) §4/§3,冲突以圣经为准。提示词执行侧(可直贴串)归 [comfyui-prompts](comfyui-prompts.md),本文件是它的规格上游。
|
> **边界**:本文件只定角色呈现;角色承载的机制语义(护甲克制矩阵、技能与状态)以 GDD 为准(敌人系统/增益状态/战斗结算)。色彩系统、形状语言总纲引用美术圣经 [art-bible](art-bible.md) §4/§3,冲突以圣经为准。提示词执行侧(可直贴串)归 [art-prompts](art-prompts.md),本文件是它的规格上游。
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
# 远程生图提示词单(对话式生图操作单)
|
# 远程生图提示词单(对话式生图操作单)
|
||||||
|
|
||||||
> **渠道定位(2026-10-06 拍板)**:生图渠道 = **远程对话式生图为主,本地 ComfyUI 为备选**(v2.7「彻底关闭」系当时口径,现行更正为备选);本文件是**对话操作单**(怎么开对话/贴什么参考图/怎么续写),提示词正文词库归 [comfyui-prompts](comfyui-prompts.md)——分工:词库改词库、操作单改流程,同一段正文不双处维护。
|
> **渠道定位(2026-10-06 拍板)**:生图渠道 = **远程对话式生图为主,本地 ComfyUI 为备选**(v2.7「彻底关闭」系当时口径,现行更正为备选);本文件是**对话操作单**(怎么开对话/贴什么参考图/怎么续写),提示词正文词库归 [art-prompts](art-prompts.md)——分工:词库改词库、操作单改流程,同一段正文不双处维护。
|
||||||
> **出图登记义务(2026-10-06 P1-1 复现性)**:每张产出登记 **模型名 + 分辨率 + seed(可取则取)+ 对话/日期**,随候选原图同存 `design/art/candidates/<资产名>/`;缺登记的候选不入正稿遴选。
|
> **出图登记义务(2026-10-06 P1-1 复现性)**:每张产出登记 **模型名 + 分辨率 + seed(可取则取)+ 对话/日期**,随候选原图同存 `artwork/candidates/<资产名>/`;缺登记的候选不入正稿遴选。
|
||||||
> 开新对话出图:同一角色 2–3 版候选各开新对话(同对话续写=修图);同角色换姿势在同对话续写。分辨率开大档;候选原图存 `design/art/candidates/<资产名>/`。
|
> 开新对话出图:同一角色 2–3 版候选各开新对话(同对话续写=修图);同角色换姿势在同对话续写。分辨率开大档;候选原图存 `artwork/candidates/<资产名>/`。
|
||||||
|
|
||||||
## 1. 主角战斗立绘
|
## 1. 主角战斗立绘
|
||||||
|
|
||||||
先贴基准图再发对应整段:重出攻击态=把 normal+hit 两张定稿成图都贴上当底稿(段尾 Reference fidelity 句按底稿锁死体型与形态,一或两张通吃);新候选开新对话,同对话续写=修图。
|
先贴基准图再发对应整段:重出攻击态=把 normal+hit 两张定稿成图都贴上当底稿(段尾 Reference fidelity 句按底稿锁死体型与形态,一或两张通吃);新候选开新对话,同对话续写=修图。
|
||||||
|
|
||||||
> 旗面注意(2026-09-28 拍板脱钩):棋盘格上的封印旗=封印黑 `#000000`(旗朱→封印紫→封印黑沿革仅作用于棋盘);**人设背包旗=旗朱红矩形旗 `#C63D22`**(2026-09-28 拍板与棋盘封印色脱钩,形为矩形非三角)——参考图 normal/hit 的红旗即正确基准,段内措辞以本注记为准。
|
> 旗面基准:参考图 normal/hit 的红旗即正确基准,段内措辞以 [character-design](character-design.md) §5.4 背包旗条为准(棋盘封印色与人设旗色的脱钩裁决也在那里),本单不复述色值与沿革。
|
||||||
|
|
||||||
### 攻击态
|
### 攻击态
|
||||||
|
|
||||||
|
|||||||
@@ -65,6 +65,7 @@
|
|||||||
| 一页纸节点 | 一节、一条规则 ≤一页纸(约 ≤80 行);装不下就拆节 |
|
| 一页纸节点 | 一节、一条规则 ≤一页纸(约 ≤80 行);装不下就拆节 |
|
||||||
| 一系统一文档 | 不建 analysis 推演件;两三句能说清的"为什么"直接写进设计目的或规则正文 |
|
| 一系统一文档 | 不建 analysis 推演件;两三句能说清的"为什么"直接写进设计目的或规则正文 |
|
||||||
| 正文只写现行规则 | 禁删除线、"(作废)"、"(日期+拍板)"式注记;审计信息入对应文档附录 |
|
| 正文只写现行规则 | 禁删除线、"(作废)"、"(日期+拍板)"式注记;审计信息入对应文档附录 |
|
||||||
|
| 正文单点维护 | 一条规则句只写在定义它的那份文档(owner 文档);其他文档要引用时写指针或语义概括,禁复制色值、尺寸、路径等可核对的具体值——上一句管不住数值之外的双写,本句补上。豁免面 = 执行侧文件必须带字面值才能工作时(生图提示词里的十六进制色、脚本参数),转写不算双写,但该文件头部必须写明"冲突时以 owner 文档为准" |
|
||||||
| 后置 ≠ 删除 | P1/P2 后置内容逐条列出;复活后置项 = 修订文档,禁静默加回 |
|
| 后置 ≠ 删除 | P1/P2 后置内容逐条列出;复活后置项 = 修订文档,禁静默加回 |
|
||||||
|
|
||||||
**数值纪律**:正文定规则、取值域、单位;平衡值进 `data/tables/`,provisional 必须标注;已锁数值事实源 = `game/data/tables/*.tres`(现行值)与 owner 文档正文(规则、取值域、单位)。
|
**数值纪律**:正文定规则、取值域、单位;平衡值进 `data/tables/`,provisional 必须标注;已锁数值事实源 = `game/data/tables/*.tres`(现行值)与 owner 文档正文(规则、取值域、单位)。
|
||||||
@@ -117,7 +118,7 @@
|
|||||||
| 删除不留死链 | 中间文档删除后,任何现行文档禁止再留指向它的文件路径;改指结论或提交号 |
|
| 删除不留死链 | 中间文档删除后,任何现行文档禁止再留指向它的文件路径;改指结论或提交号 |
|
||||||
| sim-data 白名单 | 只留 README、日志、分析工具 .py、现行 MC 对拍锚、设计文档 md;可再生原始数据不入库 |
|
| sim-data 白名单 | 只留 README、日志、分析工具 .py、现行 MC 对拍锚、设计文档 md;可再生原始数据不入库 |
|
||||||
| 出口清理项 | 每迭代出口检查单必含:本迭代中间产物逐份核对(结论已吸收、未决已迁移)后删除 |
|
| 出口清理项 | 每迭代出口检查单必含:本迭代中间产物逐份核对(结论已吸收、未决已迁移)后删除 |
|
||||||
| 暂存地非档案库 | 中间文档有两处暂存地,入内文件默认到期即死:`reports/`(需求卡片+迭代产出物)、`design/research/`(调研/提案/评估/历史验收)。`design/` 六目录不留验证截图——截图属一次性凭据,结论写进 06 或需求卡片后图像即弃(在途图放 `artwork/`,整目录不入 git);只有需要机器逐像素比对的基线图长期入库,落 `game/tests/golden/` |
|
| 暂存地非档案库 | 中间文档有两处暂存地,入内文件默认到期即死:`reports/`(需求卡片+迭代产出物)、`design/research/`(调研/提案/评估/历史验收)。`design/` 各子目录不留验证截图——截图属一次性凭据,结论写进 06 或需求卡片后图像即弃(在途图放 `artwork/`,整目录不入 git);只有需要机器逐像素比对的基线图长期入库,落 `game/tests/golden/` |
|
||||||
| 落档必写接收方 | 新报告落档时头部必须写明接收方——`06-待办清单.md` 第几条,或哪张需求卡片。写不出接收方的不落文件,内容在会话里交付即可 |
|
| 落档必写接收方 | 新报告落档时头部必须写明接收方——`06-待办清单.md` 第几条,或哪张需求卡片。写不出接收方的不落文件,内容在会话里交付即可 |
|
||||||
| 迭代实现报告 | 实现批收口的迭代级报告(各卡状态/代拍板追认单/GDD 反哺点清单),属中间文档,**落 `reports/` 不落 `design/`**(2026-10-17 用户裁:实现批禁写 `design/`,`reports/` 是其唯一可写目录):反哺点裁决落文吸收后按「证据只留最新」退役 |
|
| 迭代实现报告 | 实现批收口的迭代级报告(各卡状态/代拍板追认单/GDD 反哺点清单),属中间文档,**落 `reports/` 不落 `design/`**(2026-10-17 用户裁:实现批禁写 `design/`,`reports/` 是其唯一可写目录):反哺点裁决落文吸收后按「证据只留最新」退役 |
|
||||||
| 证据只留最新 | 测试证据只保留最新一次迭代或最新一轮同类审计版本;新证据落位后同批删上一份;待人清单过人闸后同规退役 |
|
| 证据只留最新 | 测试证据只保留最新一次迭代或最新一轮同类审计版本;新证据落位后同批删上一份;待人清单过人闸后同规退役 |
|
||||||
|
|||||||
@@ -343,7 +343,7 @@
|
|||||||
|
|
||||||
#### 立绘清晰度回退评估——是否改用高清图(2026-10-13 登记,来源=playnote,设计面=美术轨)
|
#### 立绘清晰度回退评估——是否改用高清图(2026-10-13 登记,来源=playnote,设计面=美术轨)
|
||||||
|
|
||||||
**现状**:来源=playnote 用户试玩记录「现在的立绘太丑了,像素化的粒度太低了,导致根本看不清立绘;看是否可以改回用较为高清的图片?还有一个问题是大小的问题……现在地精的图片看起来比熊地精还要大,这并不合理」。2026-10-13 用户裁定:与「第二 / 三关棋盘观感」同属**美术线更新**。**两个子问题现状不同**:子问题一=怪物大小比例不合理——**已兑现**(体量语义改生物体型〔character-design §5.2,弃强度线性映射〕+八敌逐键定档〔art-bible §8.2〕),剩余面=用户是否复核验收;子问题二=像素粒度过低/是否改回高清图——**方向已裁(2026-10-14 用户裁)**:「还是像素风格立绘,但是不需要像现在太过于像素」,定性为**精细手绘像素**(不是插画、不是 HD-2D、不回退高清图;裁决录=[美术审计-cursor会话存档](../art/美术审计-cursor会话存档-2026-10-14.md) §2.2;权威面 art-bible/character-design 口径节反哺另批),粒度问题已改派生管线(八敌源档 36–94 全过可读门槛:24 糊/32 可读/48 清楚)。[08-Alpha版本标准](08-Alpha版本标准.md) 未决项已随裁删除(2026-10-16 状态刷新批)。
|
**现状**:来源=playnote 用户试玩记录「现在的立绘太丑了,像素化的粒度太低了,导致根本看不清立绘;看是否可以改回用较为高清的图片?还有一个问题是大小的问题……现在地精的图片看起来比熊地精还要大,这并不合理」。2026-10-13 用户裁定:与「第二 / 三关棋盘观感」同属**美术线更新**。**两个子问题现状不同**:子问题一=怪物大小比例不合理——**已兑现**(体量语义改生物体型〔character-design §5.2,弃强度线性映射〕+八敌逐键定档〔art-bible §8.2〕),剩余面=用户是否复核验收;子问题二=像素粒度过低/是否改回高清图——**方向已裁(2026-10-14 用户裁)**:「还是像素风格立绘,但是不需要像现在太过于像素」,定性为**精细手绘像素**(不是插画、不是 HD-2D、不回退高清图;裁决录=[美术审计-cursor会话存档](../research/美术审计-cursor会话存档-2026-10-14.md) §2.2;权威面 art-bible/character-design 口径节反哺另批),粒度问题已改派生管线(八敌源档 36–94 全过可读门槛:24 糊/32 可读/48 清楚)。[08-Alpha版本标准](08-Alpha版本标准.md) 未决项已随裁删除(2026-10-16 状态刷新批)。
|
||||||
|
|
||||||
**缺口**:还差立绘按「精细手绘像素」新口径重产的设计——整屏方向稿与地面/立绘密度同批锁(与战斗一屏样张批联动)后才可出重产工单。
|
**缺口**:还差立绘按「精细手绘像素」新口径重产的设计——整屏方向稿与地面/立绘密度同批锁(与战斗一屏样张批联动)后才可出重产工单。
|
||||||
|
|
||||||
@@ -503,7 +503,7 @@
|
|||||||
|
|
||||||
#### 美术资产链路审计两项 P0 — 待用户裁决(2026-10-09 登记,来源=审计发现,设计面=双轨)
|
#### 美术资产链路审计两项 P0 — 待用户裁决(2026-10-09 登记,来源=审计发现,设计面=双轨)
|
||||||
|
|
||||||
**现状**:**P0①(文档面)**:`design/art/art-bible.md` 第 68/527 行与 art-status-checklist 第 13 行至今仍引用已丢失的冻结样张 sample-batch-v3-final-2026-09-30.png(磁盘实测零命中),死指涉待修复。**P0②(美术面)**:主角棋盘小人未走像素管线(插值糊图),重产事项未在任何登记处在册。审计报告唯一留档=design/art/美术资产链路审计报告-2026-10-06.html(无人指路)。裁=修复死指涉+登记重产,或判过期随旧管线退役。2026-10-13 用户令随「UI 美化三层诊断」登记:本条属第三层「观感提升」,Alpha 阶段需完成。
|
**现状**:**P0①(文档面)**:`design/art/art-bible.md` 第 68/527 行与 art-status-checklist 第 13 行至今仍引用已丢失的冻结样张 sample-batch-v3-final-2026-09-30.png(磁盘实测零命中),死指涉待修复。**P0②(美术面)**:主角棋盘小人未走像素管线(插值糊图),重产事项未在任何登记处在册。审计报告 HTML 件从未进版本库、现已删除,两项 P0 的现状以本条正文为准。裁=修复死指涉+登记重产,或判过期随旧管线退役。2026-10-13 用户令随「UI 美化三层诊断」登记:本条属第三层「观感提升」,Alpha 阶段需完成。
|
||||||
|
|
||||||
**缺口**:还差用户的路线裁决(修复死指涉+登记重产,还是判过期随旧管线退役)——裁决后文档面修复与美术重产登记各按轨推进。
|
**缺口**:还差用户的路线裁决(修复死指涉+登记重产,还是判过期随旧管线退役)——裁决后文档面修复与美术重产登记各按轨推进。
|
||||||
|
|
||||||
|
|||||||
@@ -144,7 +144,7 @@
|
|||||||
| 棋盘瓦片与格面资源图标 | [美术圣经](../art/art-bible.md) | 在役 |
|
| 棋盘瓦片与格面资源图标 | [美术圣经](../art/art-bible.md) | 在役 |
|
||||||
| 未开格类型微光(五组色相+明度档) | [HUD框架](systems/表现与支撑/HUD框架.md) | 在役(明度档 provisional 值登记见 art-bible 版本历史,复核转正归战斗一屏样张) |
|
| 未开格类型微光(五组色相+明度档) | [HUD框架](systems/表现与支撑/HUD框架.md) | 在役(明度档 provisional 值登记见 art-bible 版本历史,复核转正归战斗一屏样张) |
|
||||||
| 棋盘观感(第二 / 三关亮度与对比度) | [06-待办清单](06-待办清单.md) | 待做(2026-10-16 用户令编入迭代 30,序位③) |
|
| 棋盘观感(第二 / 三关亮度与对比度) | [06-待办清单](06-待办清单.md) | 待做(2026-10-16 用户令编入迭代 30,序位③) |
|
||||||
| 立绘清晰度回退评估(是否改用高清图) | [角色设计](../art/character-design.md) | 待做(评估已结——2026-10-14 用户裁维持像素风、升级精细手绘像素、不回退高清图,裁决录=[美术审计-cursor会话存档](../art/美术审计-cursor会话存档-2026-10-14.md) §2.2;余=立绘按新口径重产+大小比例子题用户复核) |
|
| 立绘清晰度回退评估(是否改用高清图) | [角色设计](../art/character-design.md) | 待做(评估已结——2026-10-14 用户裁维持像素风、升级精细手绘像素、不回退高清图,裁决录=[美术审计-cursor会话存档](../research/美术审计-cursor会话存档-2026-10-14.md) §2.2;余=立绘按新口径重产+大小比例子题用户复核) |
|
||||||
| 敌人立绘(全敌种) | [角色设计](../art/character-design.md) | 在役 |
|
| 敌人立绘(全敌种) | [角色设计](../art/character-design.md) | 在役 |
|
||||||
| 主角立绘三态 | [角色设计](../art/character-design.md) | 在役 |
|
| 主角立绘三态 | [角色设计](../art/character-design.md) | 在役 |
|
||||||
| 状态图标 | [美术圣经](../art/art-bible.md) | 在役 |
|
| 状态图标 | [美术圣经](../art/art-bible.md) | 在役 |
|
||||||
|
|||||||
+1
@@ -4,6 +4,7 @@
|
|||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<title>视觉与美术审计 - 2026-10-14</title>
|
<title>视觉与美术审计 - 2026-10-14</title>
|
||||||
|
<!-- 接收方:design/gdd/06-待办清单.md「立绘太丑/像素粒度」条;本页是 美术审计-cursor会话存档-2026-10-14.md 的网页渲染版,两份同批退役。 -->
|
||||||
<style>
|
<style>
|
||||||
:root {
|
:root {
|
||||||
--bg: #f8f9fb; --fg: #1c2128; --muted: #5c6675; --border: #d9dee5;
|
--bg: #f8f9fb; --fg: #1c2128; --muted: #5c6675; --border: #d9dee5;
|
||||||
+3
-1
@@ -1,5 +1,7 @@
|
|||||||
# 美术审计 Cursor 会话存档 - 2026-10-14
|
# 美术审计 Cursor 会话存档 - 2026-10-14
|
||||||
|
|
||||||
|
> 接收方:`design/gdd/06-待办清单.md`「立绘太丑/像素粒度」条与「美术资产链路审计两项 P0」条、`design/gdd/08-Alpha版本标准.md` 五·表现立绘清晰度行。对应修改(立绘按精细手绘像素重产)未完成,本存档留至该批改完。
|
||||||
|
|
||||||
## 存档说明
|
## 存档说明
|
||||||
|
|
||||||
本文档是 Cursor 会话 **「Game UI and art optimization」**(会话 ID `3d4735ce-c1b5-4c7e-acff-141a51d12a1d`)的完整存档,含两部分:
|
本文档是 Cursor 会话 **「Game UI and art optimization」**(会话 ID `3d4735ce-c1b5-4c7e-acff-141a51d12a1d`)的完整存档,含两部分:
|
||||||
@@ -12,7 +14,7 @@
|
|||||||
- 会话起止:2026-10-14 17:09 ~ 18:07(UTC+8),共两轮。
|
- 会话起止:2026-10-14 17:09 ~ 18:07(UTC+8),共两轮。
|
||||||
- 审计页经初版(17:3x 写入)+ 第二轮 5 次修订(17:46 完成)后定稿,本文第一部分为**修订后终版**。
|
- 审计页经初版(17:3x 写入)+ 第二轮 5 次修订(17:46 完成)后定稿,本文第一部分为**修订后终版**。
|
||||||
- 会话在第二轮回答输出后因 **Cursor 周额度用尽**中断(18:07)。末条回答正文已完整生成,但未必在 Cursor 界面渲染成功,本文已从会话数据库补齐(见 §2.4)。
|
- 会话在第二轮回答输出后因 **Cursor 周额度用尽**中断(18:07)。末条回答正文已完整生成,但未必在 Cursor 界面渲染成功,本文已从会话数据库补齐(见 §2.4)。
|
||||||
- 本会话引用过的旧审计:`design/art/美术资产链路审计报告-2026-10-06.html`(仓库内已有,未随本会话改动)。
|
- 本会话引用过的旧审计:2026-10-06 美术资产链路审计报告(未入版本库,已删除;其 P0 两项现由 `design/gdd/06-待办清单.md`「美术资产链路审计两项 P0」条承载)。
|
||||||
- 原始件路径(Cursor 侧):
|
- 原始件路径(Cursor 侧):
|
||||||
- 审计页:`C:\Users\DK\.cursor\projects\d-code-g-plan2\canvases\visual-art-audit.canvas.tsx`
|
- 审计页:`C:\Users\DK\.cursor\projects\d-code-g-plan2\canvases\visual-art-audit.canvas.tsx`
|
||||||
- 转写:`C:\Users\DK\.cursor\projects\d-code-g-plan2\agent-transcripts\3d4735ce-c1b5-4c7e-acff-141a51d12a1d\3d4735ce-c1b5-4c7e-acff-141a51d12a1d.jsonl`
|
- 转写:`C:\Users\DK\.cursor\projects\d-code-g-plan2\agent-transcripts\3d4735ce-c1b5-4c7e-acff-141a51d12a1d\3d4735ce-c1b5-4c7e-acff-141a51d12a1d.jsonl`
|
||||||
@@ -158,7 +158,7 @@
|
|||||||
**T1b 新建采样件(批内任务,≈0.5–1d;v1.1 补——v1.0 默认现成件够用,实查不成立)**:给测面二供帧、并承载 **L2/L3 分关读数**(直方图/A6 同口径梯度按关出值——样张 v3 断言现只跑主板,C1 核注)。落点取一(白名单 1 域内):① 扩 `board_shot_probe` 加全框模式(BoardView 挂进 battle_stage_view/屏根底之上出 L2/L3 全框帧,与既有三张 golden 取样帧互不污染);② 新建 L2/L3 战斗整屏取证探针(shot_probe 真实路径口径只达 L1 首战,扩关需确定性到达方案)。出口判据:帧面含棋盘+舞台底+屏根三层且逐跑可复现。
|
**T1b 新建采样件(批内任务,≈0.5–1d;v1.1 补——v1.0 默认现成件够用,实查不成立)**:给测面二供帧、并承载 **L2/L3 分关读数**(直方图/A6 同口径梯度按关出值——样张 v3 断言现只跑主板,C1 核注)。落点取一(白名单 1 域内):① 扩 `board_shot_probe` 加全框模式(BoardView 挂进 battle_stage_view/屏根底之上出 L2/L3 全框帧,与既有三张 golden 取样帧互不污染);② 新建 L2/L3 战斗整屏取证探针(shot_probe 真实路径口径只达 L1 首战,扩关需确定性到达方案)。出口判据:帧面含棋盘+舞台底+屏根三层且逐跑可复现。
|
||||||
|
|
||||||
**归因判据(写死在报告模板里)**:
|
**归因判据(写死在报告模板里)**:
|
||||||
- 素材轴信号 = L2/L3 板区读数与 L1 参照位在 明度带(对照 §4.1 档)/ 梯度均值 / 色域 上的偏离为主因(例:crater `P_DEEP (5,5,9)` 近纯黑叠加迷雾纯黑 ⇒ 大面积死黑;亮部墙顶跨度过大 ⇒ 闪烁感;「纹理太碎」假说在案最强证据 = 2026-10-14 美术审计结论条「第二 / 三关地面是近黑斑加亮筋的双峰纹理——数字无论亮墨还是垫牌,盯久了都会累。这不是再叠一层界面能救的」〔`design/art/美术审计-cursor会话存档-2026-10-14.md` 结论区〕);
|
- 素材轴信号 = L2/L3 板区读数与 L1 参照位在 明度带(对照 §4.1 档)/ 梯度均值 / 色域 上的偏离为主因(例:crater `P_DEEP (5,5,9)` 近纯黑叠加迷雾纯黑 ⇒ 大面积死黑;亮部墙顶跨度过大 ⇒ 闪烁感;「纹理太碎」假说在案最强证据 = 2026-10-14 美术审计结论条「第二 / 三关地面是近黑斑加亮筋的双峰纹理——数字无论亮墨还是垫牌,盯久了都会累。这不是再叠一层界面能救的」〔`design/research/美术审计-cursor会话存档-2026-10-14.md` 结论区〕);
|
||||||
- UI 轴信号 = 舞台底/叠加层贡献为主因(例:全黑面积占比 × 边缘对比产生的频闪感;`STAGE_BG` 对板缘对比带过宽);
|
- UI 轴信号 = 舞台底/叠加层贡献为主因(例:全黑面积占比 × 边缘对比产生的频闪感;`STAGE_BG` 对板缘对比带过宽);
|
||||||
- 两轴共因 = 两类偏离同时显著(报告须给出各自量级占比,修法按主次分配工作量)。
|
- 两轴共因 = 两类偏离同时显著(报告须给出各自量级占比,修法按主次分配工作量)。
|
||||||
|
|
||||||
@@ -176,7 +176,7 @@
|
|||||||
| 案 | 产出物**相对现状新增什么** | 效果上限 | 成本与风险 |
|
| 案 | 产出物**相对现状新增什么** | 效果上限 | 成本与风险 |
|
||||||
|---|---|---|---|
|
|---|---|---|---|
|
||||||
| **甲 · recolor 程序换色重校** | 新色表(`PALETTES` 两族槽值修订:抬地面明度地板、压 crater 近黑与墙顶亮端跨度、家族间 Δ 重排)+ 改前/改后并排样张 + 基线换代。输入面(v1.1 实查):脚本只重映射 wall/facade/floor/crater 四族颜色的 `terrain_*_dungeon.png`→underdark/deep_underdark 两套,**L2/L3 板面瓦片 2×21 件全在其输入面内**;不在输入面的板面相关件=`flag_seal.png`(三关共用,若归因触它另行呈报) | 确定性、可复现、逐项可机检比对;**明度水平与色相可调,纹理高频结构逐像素保持**——若 T1 归因指向「亮度秩序/对比带」,本案直达;若指向「纹理本身太碎/太 busy」,本案调不动(方法学上限——脚本头注定死「亮度秩序逐像素保持」,高频结构不改;在案佐证=2026-10-14 美术审计「双峰纹理…不是再叠一层界面能救的」) | 低;零新素材;不破 §4.3 三关方向需在修订登记中说明偏转幅度 |
|
| **甲 · recolor 程序换色重校** | 新色表(`PALETTES` 两族槽值修订:抬地面明度地板、压 crater 近黑与墙顶亮端跨度、家族间 Δ 重排)+ 改前/改后并排样张 + 基线换代。输入面(v1.1 实查):脚本只重映射 wall/facade/floor/crater 四族颜色的 `terrain_*_dungeon.png`→underdark/deep_underdark 两套,**L2/L3 板面瓦片 2×21 件全在其输入面内**;不在输入面的板面相关件=`flag_seal.png`(三关共用,若归因触它另行呈报) | 确定性、可复现、逐项可机检比对;**明度水平与色相可调,纹理高频结构逐像素保持**——若 T1 归因指向「亮度秩序/对比带」,本案直达;若指向「纹理本身太碎/太 busy」,本案调不动(方法学上限——脚本头注定死「亮度秩序逐像素保持」,高频结构不改;在案佐证=2026-10-14 美术审计「双峰纹理…不是再叠一层界面能救的」) | 低;零新素材;不破 §4.3 三关方向需在修订登记中说明偏转幅度 |
|
||||||
| **乙 · 瓦片重产(远程生图管线)** | 按新规格重出 L2/L3 瓦片([remote-gen-prompts](../design/art/remote-gen-prompts.md) 对话操作单 + [comfyui-prompts](../design/art/comfyui-prompts.md) 词库),纹理本体可重设计 | 上限高——高频细节/材质/装饰密度均可换;代价 = 非确定性、过闸周期长、需重锁色板与重跑 `terrain_tile_sets_test`+样张全套 | 高;与 08「五 · 表现」**待裁**行「素材升档重产」及 06「资产升档重产批」条(按名指路,08 未决项表行号以实查为准)方向相邻不同面——该批=立绘/小人帧尺寸升档(2026-10-04 用户令暂不做、重启=用户点名),本卡=棋盘瓦片色板/纹理方案重做,**裁本案不等于放开升档**,呈报须带划界;样张批 Q1 已裁丙案(样张反提素材规格,2026-10-16 用户令)——本案规格以其已冻结目标规格清单为上游,次序=样张规格先行(§4B X2) |
|
| **乙 · 瓦片重产(远程生图管线)** | 按新规格重出 L2/L3 瓦片([remote-gen-prompts](../design/art/remote-gen-prompts.md) 对话操作单 + [art-prompts](../design/art/art-prompts.md) 词库),纹理本体可重设计 | 上限高——高频细节/材质/装饰密度均可换;代价 = 非确定性、过闸周期长、需重锁色板与重跑 `terrain_tile_sets_test`+样张全套 | 高;与 08「五 · 表现」**待裁**行「素材升档重产」及 06「资产升档重产批」条(按名指路,08 未决项表行号以实查为准)方向相邻不同面——该批=立绘/小人帧尺寸升档(2026-10-04 用户令暂不做、重启=用户点名),本卡=棋盘瓦片色板/纹理方案重做,**裁本案不等于放开升档**,呈报须带划界;样张批 Q1 已裁丙案(样张反提素材规格,2026-10-16 用户令)——本案规格以其已冻结目标规格清单为上游,次序=样张规格先行(§4B X2) |
|
||||||
|
|
||||||
**T2 修法约束(v1.2 新增,承载 §4B X1/X2 已裁事实)**:①本卡改格底明度档与徽章批叠微光同基线(art-bible §4.1 格底档 L 0.08–0.14)——落码后两卡逐位比对 golden 棋盘三张防互踩;②串行序位徽章→样张→观感(排期栏),本卡落码在两批落码之后,基线换代走契约 6 显式流程;③若 T1 出口裁乙,瓦片规格与样张卡已冻结目标规格清单对齐,次序=样张规格先行(§4B X2);裁甲则对样张批零连带。
|
**T2 修法约束(v1.2 新增,承载 §4B X1/X2 已裁事实)**:①本卡改格底明度档与徽章批叠微光同基线(art-bible §4.1 格底档 L 0.08–0.14)——落码后两卡逐位比对 golden 棋盘三张防互踩;②串行序位徽章→样张→观感(排期栏),本卡落码在两批落码之后,基线换代走契约 6 显式流程;③若 T1 出口裁乙,瓦片规格与样张卡已冻结目标规格清单对齐,次序=样张规格先行(§4B X2);裁甲则对样张批零连带。
|
||||||
|
|
||||||
@@ -281,7 +281,7 @@
|
|||||||
| 1 | 工具实存性 | `board_shot_probe` **实存非臆名**(三关 targets 名/行号 :34 全对,且自带确定性驱动可复现);render_gate/golden_compare/shot_checker 能力与 C5 描述相符。**翻案**:board_shot_probe 帧 = 空视口裸挂 BoardView,**不含舞台底/屏根像素**(探针只实例化 BoardView,battle_stage_view/BG_ROOT 未挂载);shot_probe 战斗屏真实路径只达 **L1 首战**(其头注商店房不纳屏段自证)⇒ T1「舞台底与屏根」测面与「L2/L3 分关实测」均**无现成采样件**,v1.0「采样源=board_shot_probe 渲染帧」对该测面不成立 | `game/smoke/board_shot_probe.gd:34, :55-61`;`game/smoke/shot_probe.gd:12-14, :159-164`;`tools/render_gate.sh:9, :55-68, :95-107` | 新增 **T1b 新建采样件任务**(≈0.5–1d,白名单 1 域内);T1 估时上调、合计 4–6d→**5–7d**;C6 加帧面边界注 + 过程帧即弃纪律注 |
|
| 1 | 工具实存性 | `board_shot_probe` **实存非臆名**(三关 targets 名/行号 :34 全对,且自带确定性驱动可复现);render_gate/golden_compare/shot_checker 能力与 C5 描述相符。**翻案**:board_shot_probe 帧 = 空视口裸挂 BoardView,**不含舞台底/屏根像素**(探针只实例化 BoardView,battle_stage_view/BG_ROOT 未挂载);shot_probe 战斗屏真实路径只达 **L1 首战**(其头注商店房不纳屏段自证)⇒ T1「舞台底与屏根」测面与「L2/L3 分关实测」均**无现成采样件**,v1.0「采样源=board_shot_probe 渲染帧」对该测面不成立 | `game/smoke/board_shot_probe.gd:34, :55-61`;`game/smoke/shot_probe.gd:12-14, :159-164`;`tools/render_gate.sh:9, :55-68, :95-107` | 新增 **T1b 新建采样件任务**(≈0.5–1d,白名单 1 域内);T1 估时上调、合计 4–6d→**5–7d**;C6 加帧面边界注 + 过程帧即弃纪律注 |
|
||||||
| 2 | 量化判据出处 | A6 ≥4.70(`:26/:338/:1021-1022`,v1 4.09×1.15)、F6 Δ≥18(`:339/:996`)、格底档 L 0.08–0.14/墙顶 ≥0.30/饱和 ≤0.55(art-bible :194/:205/:225-227)、48 色+三通道差 ≥8/255(art-bible :207)**全部实值相符**。**翻案两件**:①A3 现行执法 = **v3.5 冻结定值 Δ≥30**(实测 38),Δ≥55 已数学冲突退役(`:975-979`),v1.0 C3「开工时以当期为准复核」含糊化——已写死;②样张 v3 断言(A3/A6/F6)只跑 **dungeon 拼板主板**(`:130-131`),S3 underdark 仅为 HSV 示意不参断言——「分关实测」非现成能力。自设目标带合法性:「待定现用」态释义(:207)只覆盖**圣经在册数值**的执法态,不自动覆盖批次自设判据——二者不冲突但须写明边界 | 如上各行号 | C1–C3 加核注重写;V2 增「批次判据身份≠执法值,转执法须 art-bible 修订登记」条款;T1b 承载分关读数 |
|
| 2 | 量化判据出处 | A6 ≥4.70(`:26/:338/:1021-1022`,v1 4.09×1.15)、F6 Δ≥18(`:339/:996`)、格底档 L 0.08–0.14/墙顶 ≥0.30/饱和 ≤0.55(art-bible :194/:205/:225-227)、48 色+三通道差 ≥8/255(art-bible :207)**全部实值相符**。**翻案两件**:①A3 现行执法 = **v3.5 冻结定值 Δ≥30**(实测 38),Δ≥55 已数学冲突退役(`:975-979`),v1.0 C3「开工时以当期为准复核」含糊化——已写死;②样张 v3 断言(A3/A6/F6)只跑 **dungeon 拼板主板**(`:130-131`),S3 underdark 仅为 HSV 示意不参断言——「分关实测」非现成能力。自设目标带合法性:「待定现用」态释义(:207)只覆盖**圣经在册数值**的执法态,不自动覆盖批次自设判据——二者不冲突但须写明边界 | 如上各行号 | C1–C3 加核注重写;V2 增「批次判据身份≠执法值,转执法须 art-bible 修订登记」条款;T1b 承载分关读数 |
|
||||||
| 3 | 「重产≠放开升档」划界 | 划界**成立但引据须换代**:08 未决项表 2026-10-16 v1.6 已重编号(八项减七项)——行号指路不可靠,按名「素材升档重产进不进 Alpha」「立绘清晰度回退评估」现行确在第 6/7 行(实查);06「资产升档重产批」现行状态 = 2026-10-04 令暂不做 + 2026-10-06 优先级再降 + **2026-10-06 方案二注记:原 64/96/128 升档路线已被八敌逐键定档实质走完,剩余挂起=提灯点亮解禁候选**——v1.0 P4「该条方向=帧尺寸升档」表述滞后 | 08:154, :209-210, v1.6 行(:226);06 升档批条状态行全文 | P4 重写(按名指路+行号注明以实查为准+方案二注记现状);T2 乙案行同改 |
|
| 3 | 「重产≠放开升档」划界 | 划界**成立但引据须换代**:08 未决项表 2026-10-16 v1.6 已重编号(八项减七项)——行号指路不可靠,按名「素材升档重产进不进 Alpha」「立绘清晰度回退评估」现行确在第 6/7 行(实查);06「资产升档重产批」现行状态 = 2026-10-04 令暂不做 + 2026-10-06 优先级再降 + **2026-10-06 方案二注记:原 64/96/128 升档路线已被八敌逐键定档实质走完,剩余挂起=提灯点亮解禁候选**——v1.0 P4「该条方向=帧尺寸升档」表述滞后 | 08:154, :209-210, v1.6 行(:226);06 升档批条状态行全文 | P4 重写(按名指路+行号注明以实查为准+方案二注记现状);T2 乙案行同改 |
|
||||||
| 4 | recolor 能力边界 | 头注方法=仅对 `terrain_*_dungeon.png` 按 wall/facade/floor/crater 四族槽重映射、输出 underdark/deep_underdark 两套;实盘 board/ 目录两套各 21 件(**墙 16+地 5**)与脚本输入面完全对齐,`flag_seal.png` 不在输入面。v1.0 F2「墙类 21 件」**件数错**(21 为总数,16 唯一墙名单单点 `TILE_WALL_NAMES`)。「纹理太碎调不动」有实证:recolor 头注定死亮度秩序逐像素保持(方法学上限)+ 2026-10-14 美术审计结论区「第二/三关地面=近黑斑加亮筋双峰纹理,盯久了累,不是再叠一层界面能救的」(该审计 md 在盘;同日另存 2026-10-06 旧审计 HTML,其棋盘相关结论未涉 L2L3 瓦片碎度) | `tools/recolor_terrain_tiles.py:1-12`;`game/presentation/views/board_view.gd:81-88`(16 件名数组+头注「16 唯一墙瓦片名单」);`design/art/美术审计-cursor会话存档-2026-10-14.md` 结论区;Glob `game/assets/art/board/` 两套件名清点 | F2 订正件数+flag_seal 例外注;甲案行写明输入面全覆盖;T1 归因判据与 Q2 引审计实证 |
|
| 4 | recolor 能力边界 | 头注方法=仅对 `terrain_*_dungeon.png` 按 wall/facade/floor/crater 四族槽重映射、输出 underdark/deep_underdark 两套;实盘 board/ 目录两套各 21 件(**墙 16+地 5**)与脚本输入面完全对齐,`flag_seal.png` 不在输入面。v1.0 F2「墙类 21 件」**件数错**(21 为总数,16 唯一墙名单单点 `TILE_WALL_NAMES`)。「纹理太碎调不动」有实证:recolor 头注定死亮度秩序逐像素保持(方法学上限)+ 2026-10-14 美术审计结论区「第二/三关地面=近黑斑加亮筋双峰纹理,盯久了累,不是再叠一层界面能救的」(该审计 md 在盘;同日另存 2026-10-06 旧审计 HTML,其棋盘相关结论未涉 L2L3 瓦片碎度) | `tools/recolor_terrain_tiles.py:1-12`;`game/presentation/views/board_view.gd:81-88`(16 件名数组+头注「16 唯一墙瓦片名单」);`design/research/美术审计-cursor会话存档-2026-10-14.md` 结论区;Glob `game/assets/art/board/` 两套件名清点 | F2 订正件数+flag_seal 例外注;甲案行写明输入面全覆盖;T1 归因判据与 Q2 引审计实证 |
|
||||||
| 5 | 文字位条分工句 | 06:451 原文在册:「两条不同面,不互相替代,各自保留」;三处文字位=站桩名行/敌顺位徽标/RAP 反馈行,06:443 已随迭代 26 T3 完成——v1.0 P2 语义与原文一致 | 06:451, :437-443 | P2 补原文引述 |
|
| 5 | 文字位条分工句 | 06:451 原文在册:「两条不同面,不互相替代,各自保留」;三处文字位=站桩名行/敌顺位徽标/RAP 反馈行,06:443 已随迭代 26 T3 完成——v1.0 P2 语义与原文一致 | 06:451, :437-443 | P2 补原文引述 |
|
||||||
| 6 | V 条判具 | V2=样张 v3(主板)+T1b 分关读数+shot_checker A–D**+F**(v1.0 漏 F 判据,2026-10-15 已入闸)+`terrain_tile_sets_test`/`ui_contrast_probe`(两探针实存);V3=`golden_baseline_refresh.sh` **实存**且用法查明:缺省模式=棋盘三张(probe 抓帧→crop→覆盖 `game/tests/golden/`),`--menu`=菜单全屏,素材缺位拒跑,呈现批 agent 自换代+提交说明强制写触发原因(其头注 Q5/Q6/S3 在册) | `tools/golden_baseline_refresh.sh:2-14, :52-76`;`tools/shot_checker.py:8-19` | C5/契约 6/T4/V2/V3 补齐实操步骤与 F 断言 |
|
| 6 | V 条判具 | V2=样张 v3(主板)+T1b 分关读数+shot_checker A–D**+F**(v1.0 漏 F 判据,2026-10-15 已入闸)+`terrain_tile_sets_test`/`ui_contrast_probe`(两探针实存);V3=`golden_baseline_refresh.sh` **实存**且用法查明:缺省模式=棋盘三张(probe 抓帧→crop→覆盖 `game/tests/golden/`),`--menu`=菜单全屏,素材缺位拒跑,呈现批 agent 自换代+提交说明强制写触发原因(其头注 Q5/Q6/S3 在册) | `tools/golden_baseline_refresh.sh:2-14, :52-76`;`tools/shot_checker.py:8-19` | C5/契约 6/T4/V2/V3 补齐实操步骤与 F 断言 |
|
||||||
| 7 | Q1/Q3 已裁检索 | **Q1 属已裁项**:06:449 条内明文「开工前须先定性(沿用既有裁决)」+ 状态行「开工前先过定性人闸」(2026-10-13 用户裁定)+ 08 版本历史 v0.3 同款注——v1.0 一边在 P1 引该裁决、一边把同一闸列为 Q1 待裁,自相矛盾,触用户红线。Q3(同批与否)与 Q2(甲/乙)全库检索**无既裁**(06 单条覆盖两关但未裁批次数;playnote 无;git log 无)——保留为待裁 | 06:445-453;08:220(v0.3);playnote.md:5;git log 2026-10 检索 | Q1 从 §10 删除、改 P1/T1 出口/V1 流程硬步骤引用(§10 载明移除理由);Q2/Q3 保留 |
|
| 7 | Q1/Q3 已裁检索 | **Q1 属已裁项**:06:449 条内明文「开工前须先定性(沿用既有裁决)」+ 状态行「开工前先过定性人闸」(2026-10-13 用户裁定)+ 08 版本历史 v0.3 同款注——v1.0 一边在 P1 引该裁决、一边把同一闸列为 Q1 待裁,自相矛盾,触用户红线。Q3(同批与否)与 Q2(甲/乙)全库检索**无既裁**(06 单条覆盖两关但未裁批次数;playnote 无;git log 无)——保留为待裁 | 06:445-453;08:220(v0.3);playnote.md:5;git log 2026-10 检索 | Q1 从 §10 删除、改 P1/T1 出口/V1 流程硬步骤引用(§10 载明移除理由);Q2/Q3 保留 |
|
||||||
|
|||||||
@@ -22,7 +22,7 @@
|
|||||||
| P1 | 格子样张 v3 已冻结(2026-09-30,机检 17/17 全绿,四冻结①④重冻生效)。整屏四项的**机检代码在位且已对实机渲染帧跑过**(B 文字对比/C 明度三档带/D 文字禁压纹理+F 文字在判据),**唯 ③整屏焦点预算明文不可机检(E 段归人闸)**;§1.4 意义上的「整屏样张判定物」与四屏冻结记录两件从未产出 | [art-bible](../design/art/art-bible.md) §1.4(L64 闸条款/L68 v3 冻结记录);[shot_checker.py](../tools/shot_checker.py) 头注 L1-25;git 提交 053baeee(iter9-T8 卡⑤ 首跑实测 PASS);[render_gate.sh](../tools/render_gate.sh) ①段 L11-13 |
|
| P1 | 格子样张 v3 已冻结(2026-09-30,机检 17/17 全绿,四冻结①④重冻生效)。整屏四项的**机检代码在位且已对实机渲染帧跑过**(B 文字对比/C 明度三档带/D 文字禁压纹理+F 文字在判据),**唯 ③整屏焦点预算明文不可机检(E 段归人闸)**;§1.4 意义上的「整屏样张判定物」与四屏冻结记录两件从未产出 | [art-bible](../design/art/art-bible.md) §1.4(L64 闸条款/L68 v3 冻结记录);[shot_checker.py](../tools/shot_checker.py) 头注 L1-25;git 提交 053baeee(iter9-T8 卡⑤ 首跑实测 PASS);[render_gate.sh](../tools/render_gate.sh) ①段 L11-13 |
|
||||||
| P2 | 现行 v3 脚本头注自称「战斗一屏样张方向稿生成脚本 v3-draft」,实际出的是 B/C/D 三区 1280×800 全内容合成图 + S2/S3/S4 附录 + A1–A6 程序化审计——但**冻结记录登记在格子样张闸名下**(圣经 §1.4 v3 段),且它验的是「格+一张合成 mockup」,不是「屏级气质判定物 + 四项逐项断言 + 冻结记录」三件齐 | [render_sample_sheet_v3.py](../tools/render_sample_sheet_v3.py) 头注 L2、L28「一屏样张 = B/C/D 三区全内容(1280×800 1:1 实比)」、L1100-1144 版式与断言清单;art-bible §1.4 L68 |
|
| P2 | 现行 v3 脚本头注自称「战斗一屏样张方向稿生成脚本 v3-draft」,实际出的是 B/C/D 三区 1280×800 全内容合成图 + S2/S3/S4 附录 + A1–A6 程序化审计——但**冻结记录登记在格子样张闸名下**(圣经 §1.4 v3 段),且它验的是「格+一张合成 mockup」,不是「屏级气质判定物 + 四项逐项断言 + 冻结记录」三件齐 | [render_sample_sheet_v3.py](../tools/render_sample_sheet_v3.py) 头注 L2、L28「一屏样张 = B/C/D 三区全内容(1280×800 1:1 实比)」、L1100-1144 版式与断言清单;art-bible §1.4 L68 |
|
||||||
| P3 | 看板十五件:✅4 / ◐8 / ⬜3(实点计数核过);「战斗一屏样张」行 = ⬜ 未开始,需求文档指针为战斗表现 + art-bible §5.1。**注:§5 已抽离至 [character-design.md](../design/art/character-design.md)(v1.7 批),指针系旧锚;同型旧锚另有 06:41「归属」栏一处**(写作「验收标准归战斗表现与美术圣经 §5.1 共裁」——正确锚应为 §1.4 整屏闸+§7.2 文字硬指标,§5.1 只管剪影轮廓),T0 两处一并订正 | [art-status-checklist.md](../design/art/art-status-checklist.md) L5/L13-14;06:41 |
|
| P3 | 看板十五件:✅4 / ◐8 / ⬜3(实点计数核过);「战斗一屏样张」行 = ⬜ 未开始,需求文档指针为战斗表现 + art-bible §5.1。**注:§5 已抽离至 [character-design.md](../design/art/character-design.md)(v1.7 批),指针系旧锚;同型旧锚另有 06:41「归属」栏一处**(写作「验收标准归战斗表现与美术圣经 §5.1 共裁」——正确锚应为 §1.4 整屏闸+§7.2 文字硬指标,§5.1 只管剪影轮廓),T0 两处一并订正 | [art-status-checklist.md](../design/art/art-status-checklist.md) L5/L13-14;06:41 |
|
||||||
| P4 | 旧冻结样张产物 `sample-batch-v3-final-2026-09-30.png` 磁盘实测不在盘(`artwork/mockups/` 现存 v0/v2/v31/v32/v33/v34/v35-draft 等同系列图与 level-map-sheet-v1),06 在册 P0①(死指涉条,其原记状态至 2026-10-16 前悬而未决)**已由 Q5 裁甲案(2026-10-16 用户令),处置落 T0**(2026-10-14 审计会话存档 :290/:316 仍记「未读到」)。**订正:06:611 原文写「art-bible 第 68/527 行」,现行为 68 与 562**(527 行实为 §9.1 正面参考表,不含该指涉;562=v3.2 版本历史行)——T0 订正面对 art-bible:68/:562 与 06:611 的行号自身一并核。**同类死指涉另检出一处(v1.1 新增)**:art-bible §8.2 L490 指路 `design/qa/m3-iter9-t8-rulings-2026-09-30.md`(迭代 9 三裁决呈报单)该文件已在提交 8e02dcf0「存量超期清理批」删除,盘上不存在——裁决结论本身已由 art-bible §8.2/§8.4 与 06:465-471 承载,指路须改指现行文档或改「描述性出处」 | 2026-10-16 目录实查;06:609-615;design/art/美术审计-cursor会话存档-2026-10-14.md:290,:316;git 只读查询(053baeee 建件/8e02dcf0 删件) |
|
| P4 | 旧冻结样张产物 `sample-batch-v3-final-2026-09-30.png` 磁盘实测不在盘(`artwork/mockups/` 现存 v0/v2/v31/v32/v33/v34/v35-draft 等同系列图与 level-map-sheet-v1),06 在册 P0①(死指涉条,其原记状态至 2026-10-16 前悬而未决)**已由 Q5 裁甲案(2026-10-16 用户令),处置落 T0**(2026-10-14 审计会话存档 :290/:316 仍记「未读到」)。**订正:06:611 原文写「art-bible 第 68/527 行」,现行为 68 与 562**(527 行实为 §9.1 正面参考表,不含该指涉;562=v3.2 版本历史行)——T0 订正面对 art-bible:68/:562 与 06:611 的行号自身一并核。**同类死指涉另检出一处(v1.1 新增)**:art-bible §8.2 L490 指路 `design/qa/m3-iter9-t8-rulings-2026-09-30.md`(迭代 9 三裁决呈报单)该文件已在提交 8e02dcf0「存量超期清理批」删除,盘上不存在——裁决结论本身已由 art-bible §8.2/§8.4 与 06:465-471 承载,指路须改指现行文档或改「描述性出处」 | 2026-10-16 目录实查;06:609-615;design/research/美术审计-cursor会话存档-2026-10-14.md:290,:316;git 只读查询(053baeee 建件/8e02dcf0 删件) |
|
||||||
| P5 | 素材不入 git(归档纪律 art-bible §8.3 L500),v3 脚本 `asset_root()` 做「本仓库→主检出 D:/code/g-plan2」两级回退,且 OUT_PNG 落笔前 `os.makedirs(..., exist_ok=True)`——**故 worktree 分支内可直接跑(v1.0 的「不可直接跑」判断证伪)**;真实约束是**产物落进该 worktree 的 `artwork/mockups/`,而 `artwork/` 整目录不入库**,冻结件不随合并进 master,须按 §8.3 归档纪律打包(这亦是 P4 丢件的成因)。素材在盘实测:board 瓦片 64 件、character 立绘/小人、`game/assets/ui/icons` 状态图标 18 件、fusion-pixel 字体齐 | 脚本头注 L31 + `asset_root` L50-56 + L62/L1147-1149;art-bible §8.3 L500;2026-10-16 目录实查 |
|
| P5 | 素材不入 git(归档纪律 art-bible §8.3 L500),v3 脚本 `asset_root()` 做「本仓库→主检出 D:/code/g-plan2」两级回退,且 OUT_PNG 落笔前 `os.makedirs(..., exist_ok=True)`——**故 worktree 分支内可直接跑(v1.0 的「不可直接跑」判断证伪)**;真实约束是**产物落进该 worktree 的 `artwork/mockups/`,而 `artwork/` 整目录不入库**,冻结件不随合并进 master,须按 §8.3 归档纪律打包(这亦是 P4 丢件的成因)。素材在盘实测:board 瓦片 64 件、character 立绘/小人、`game/assets/ui/icons` 状态图标 18 件、fusion-pixel 字体齐 | 脚本头注 L31 + `asset_root` L50-56 + L62/L1147-1149;art-bible §8.3 L500;2026-10-16 目录实查 |
|
||||||
| P6 | 样张 v1 曾被用户**四原因整体否决**(2026-09-28),四条已全部断言化。**权威映射表在脚本写报告的那段代码里(L1156-1160),不在头注**——头注只逐条标了 ①③ 的编号,②④ 需从映射表补:①**显示太丑(总纲)**→ A6 观感密度+装饰变体 ≥2 种;②**封印色冲突**→ 封印黑 #000000(A1a 色板对表自动覆盖);③**立体感不够**→ A3 图底分离阈值上调+F6 顶面/立面双明度带 Δ≥18+F7 整板悬崖 DEPTH_PX 与游戏渲染常量同源;④**微光格只留微光**→ F5c 微光段零 draw_inlay(另见 art-bible v2.12 角嵌退役批)。注:脚本头注 L23 仍写 A3 Δ≥55、L1157 仍写「整板明度 std ≥50.9」,两处均是**旧口径残留文本**,现行定值以圣经 §1.4 v3 记录为准(A3b Δ≥30、A6 明度梯度均值 ≥4.70) | 脚本 L12-26(F1–F7/A1–A6 头注)+L1156-1160(四否决映射表);art-bible L68(Δ≥30 定值)/L570(v2.13「v1 四否决原因断言化收官」)/L569(v2.12 ④) |
|
| P6 | 样张 v1 曾被用户**四原因整体否决**(2026-09-28),四条已全部断言化。**权威映射表在脚本写报告的那段代码里(L1156-1160),不在头注**——头注只逐条标了 ①③ 的编号,②④ 需从映射表补:①**显示太丑(总纲)**→ A6 观感密度+装饰变体 ≥2 种;②**封印色冲突**→ 封印黑 #000000(A1a 色板对表自动覆盖);③**立体感不够**→ A3 图底分离阈值上调+F6 顶面/立面双明度带 Δ≥18+F7 整板悬崖 DEPTH_PX 与游戏渲染常量同源;④**微光格只留微光**→ F5c 微光段零 draw_inlay(另见 art-bible v2.12 角嵌退役批)。注:脚本头注 L23 仍写 A3 Δ≥55、L1157 仍写「整板明度 std ≥50.9」,两处均是**旧口径残留文本**,现行定值以圣经 §1.4 v3 记录为准(A3b Δ≥30、A6 明度梯度均值 ≥4.70) | 脚本 L12-26(F1–F7/A1–A6 头注)+L1156-1160(四否决映射表);art-bible L68(Δ≥30 定值)/L570(v2.13「v1 四否决原因断言化收官」)/L569(v2.12 ④) |
|
||||||
| P7 | 用户气质否决另有两例点名先例:①站桩排版旧格式「盒顶固定 y 与盒内居中在高盒下拉开血条-立绘空洞」2026-10-06 用户点名否决,由 art-bible §8.2「站桩立绘排版 = 方案二」代替(L496);②playnote 立绘批评,**逐字原文**:「现在的立绘太丑了,像素化的粒度太低了,导致根本看不清立绘;看是否可以改回用较为高清的图片?」(playnote.md:9,文件本身无日期;日期系 06「资产升档重产批」条 2026-10-06 注所记「同日 playnote 立绘批评」,裁定日为 2026-10-13 归美术线) | [playnote.md](../design/research/playnote.md):9;art-bible §8.2 L496;06:465-471/06「立绘清晰度回退评估」条 |
|
| P7 | 用户气质否决另有两例点名先例:①站桩排版旧格式「盒顶固定 y 与盒内居中在高盒下拉开血条-立绘空洞」2026-10-06 用户点名否决,由 art-bible §8.2「站桩立绘排版 = 方案二」代替(L496);②playnote 立绘批评,**逐字原文**:「现在的立绘太丑了,像素化的粒度太低了,导致根本看不清立绘;看是否可以改回用较为高清的图片?」(playnote.md:9,文件本身无日期;日期系 06「资产升档重产批」条 2026-10-06 注所记「同日 playnote 立绘批评」,裁定日为 2026-10-13 归美术线) | [playnote.md](../design/research/playnote.md):9;art-bible §8.2 L496;06:465-471/06「立绘清晰度回退评估」条 |
|
||||||
|
|||||||
@@ -5,11 +5,13 @@
|
|||||||
收口第四闸(与 doc_link_audit / doc_term_audit / gdd_lint 同列):
|
收口第四闸(与 doc_link_audit / doc_term_audit / gdd_lint 同列):
|
||||||
把目录三层裁定变成机器检查——任何会话乱放文件,收口时此处直接 FAIL。
|
把目录三层裁定变成机器检查——任何会话乱放文件,收口时此处直接 FAIL。
|
||||||
|
|
||||||
四查:
|
六查:
|
||||||
1. 顶层目录白名单(新增顶层目录 = FAIL,须同批改 AGENTS.md + 本脚本白名单)
|
1. 顶层目录白名单(新增顶层目录 = FAIL,须同批改 AGENTS.md + 本脚本白名单)
|
||||||
2. 根目录文件白名单(根上只许运行文件与规则文件)
|
2. 根目录文件白名单(根上只许运行文件与规则文件)
|
||||||
3. 图像白名单(图只许在 artwork/ game/assets/ design/art/references/ design/dev/architecture/)
|
3. 图像白名单(图只许在 artwork/ game/assets/ design/art/references/ design/dev/architecture/ game/tests/golden/)
|
||||||
4. 退役路径守卫(production/ docs/ tests/ qa-data/ candidates/mockups 旧路径再现 = FAIL)
|
4. 退役路径守卫(production/ docs/ tests/ qa-data/ design/registry/ design/qa/ 旧路径再现 = FAIL)
|
||||||
|
5. design/ 一级子目录白名单(防临时新目录)
|
||||||
|
6. design/art/ 内容白名单(只许 .md 与 references/;审计报告属中间文档归 design/research/)
|
||||||
|
|
||||||
用法: python tools/repo_structure_audit.py # 全查,FAIL 时 exit 1
|
用法: python tools/repo_structure_audit.py # 全查,FAIL 时 exit 1
|
||||||
python tools/repo_structure_audit.py --json # 机器读输出
|
python tools/repo_structure_audit.py --json # 机器读输出
|
||||||
@@ -37,8 +39,12 @@ IMAGE_PREFIXES = ("artwork/", "game/assets/", "design/art/references/", "design/
|
|||||||
RETIRED = ["production", "docs", "tests", "qa-data", "design/registry",
|
RETIRED = ["production", "docs", "tests", "qa-data", "design/registry",
|
||||||
"design/art/candidates", "production/mockups",
|
"design/art/candidates", "production/mockups",
|
||||||
"design/ux", "game/tools", "design/qa"]
|
"design/ux", "game/tools", "design/qa"]
|
||||||
# design/ 一级子目录白名单(防 ad-hoc 新目录)
|
# 5) design/ 一级子目录白名单(防 ad-hoc 新目录)
|
||||||
DESIGN_SUBDIRS = {"art", "dev", "gdd", "research"}
|
DESIGN_SUBDIRS = {"art", "dev", "gdd", "research"}
|
||||||
|
# 6) design/art/ 内容白名单——美术只放 .md 文档与 references/ 参考图;
|
||||||
|
# 审计报告属中间文档,按 doc-conventions §11 落 design/research/,禁驻 art/
|
||||||
|
ART_EXTS = {".md"}
|
||||||
|
ART_SUBDIRS = {"references"}
|
||||||
|
|
||||||
|
|
||||||
def scan():
|
def scan():
|
||||||
@@ -80,6 +86,21 @@ def scan():
|
|||||||
if extra_d:
|
if extra_d:
|
||||||
fails.append("design/ 子目录越界: %s(合法: %s;新分类先过用户拍板再改两处白名单)" % (sorted(extra_d), sorted(DESIGN_SUBDIRS)))
|
fails.append("design/ 子目录越界: %s(合法: %s;新分类先过用户拍板再改两处白名单)" % (sorted(extra_d), sorted(DESIGN_SUBDIRS)))
|
||||||
|
|
||||||
|
# 6) design/art/ 内容白名单
|
||||||
|
art_dir = ROOT / "design" / "art"
|
||||||
|
art_bad = []
|
||||||
|
if art_dir.is_dir():
|
||||||
|
for p in sorted(art_dir.iterdir()):
|
||||||
|
rel = p.relative_to(ROOT).as_posix()
|
||||||
|
if p.is_dir():
|
||||||
|
if p.name not in ART_SUBDIRS:
|
||||||
|
art_bad.append(rel + "/")
|
||||||
|
elif p.suffix.lower() not in ART_EXTS:
|
||||||
|
art_bad.append(rel)
|
||||||
|
if art_bad:
|
||||||
|
fails.append("design/art/ 越界内容 %d 项(只许 .md 与 %s): %s" %
|
||||||
|
(len(art_bad), "、".join(ART_SUBDIRS) + "/", art_bad[:8]))
|
||||||
|
|
||||||
notes.append("顶层目录 %d 合法 · 根文件 %d 合法 · design/ 子目录 %s · 图像白名单命中 %s" %
|
notes.append("顶层目录 %d 合法 · 根文件 %d 合法 · design/ 子目录 %s · 图像白名单命中 %s" %
|
||||||
(len(top_dirs & TOP_DIRS), len(top_files & ROOT_FILES),
|
(len(top_dirs & TOP_DIRS), len(top_files & ROOT_FILES),
|
||||||
sorted(design_subs), "、".join(IMAGE_PREFIXES)))
|
sorted(design_subs), "、".join(IMAGE_PREFIXES)))
|
||||||
@@ -96,7 +117,7 @@ def main():
|
|||||||
print(" ! " + f)
|
print(" ! " + f)
|
||||||
print("\n处理: 文件归位到合法区;确需新类别 = 同批修订 AGENTS.md Project Layout + 本脚本白名单,commit 留痕。")
|
print("\n处理: 文件归位到合法区;确需新类别 = 同批修订 AGENTS.md Project Layout + 本脚本白名单,commit 留痕。")
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
print("\n结构审计 PASS(四查全过:顶层目录/根文件/图像白名单/退役路径)")
|
print("\n结构审计 PASS(六查全过:顶层目录/根文件/图像白名单/退役路径/design 子目录/art 内容)")
|
||||||
sys.exit(0)
|
sys.exit(0)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user