iter9-T1: 批 A 机检冻结——样张 v3 断言定值落锁(A3b Δ≥30 定值/A4 尺寸基线硬等 46×48+32×32/F6 沿用)+产物转正 sample-batch-v3-final+机检报告【冻结】+圣经 v3.1(四冻结①④重冻:E 格高墙 30% 词表+格底分档 L0.10+亮墨三档直画+色牌后备);机检 17/17 全绿;doc 三闸零新增

This commit is contained in:
DKChan committed 2026-09-30 04:32:57 +08:00
1 parent 3933723562
commit 7a847c7796
3 files changed
+56 -16

No files matched your search

+16 -15
View File
@@ -31,9 +31,9 @@ v1 用户否决四原因(2026-09-28)全部断言化——生成即验,不过闸
素材不入 git——先查本仓库,缺位回退主检出(D:/code/g-plan2)。
词表事实源 = design/research/board-tile-vocab-plan-a-2026-09-26.md;画法参数事实源 =
design/research/画法参数四源对照表-2026-09-26.md(四源对表先行产物)。
输出 = artwork/mockups/sample-batch-v2-2026-09-28.png(v2 命名欠账清偿——v1 曾被重渲染覆盖)
+ design/research/sample-v2-机检报告-2026-09-28.md。
用法:python tools/render_sample_sheet.py
输出 = artwork/mockups/sample-batch-v3-final-2026-09-30.png(v3.5 冻结批产物转正——2026-09-30 批 A)
+ design/research/sample-v3-final-机检报告-2026-09-30.md(标注「冻结」;断言定值=A3b Δ≥30/A4 尺寸基线)。
用法:python tools/render_sample_sheet_v3.py
"""
from PIL import Image, ImageDraw, ImageFilter, ImageChops, ImageFont
import os
@@ -59,8 +59,8 @@ def asset_root(*parts):
BOARD_DIR = ("game", "assets", "art", "board")
CHAR_DIR = ("game", "assets", "art", "character")
ICON_DIR = ("game", "assets", "ui", "icons")
OUT_PNG = os.path.join(ROOT, "artwork", "mockups", "sample-batch-v31-draft-2026-09-29.png")
OUT_REPORT = os.path.join(ROOT, "design", "research", "sample-v31-draft-机检报告-2026-09-29.md")
OUT_PNG = os.path.join(ROOT, "artwork", "mockups", "sample-batch-v3-final-2026-09-30.png")
OUT_REPORT = os.path.join(ROOT, "design", "research", "sample-v3-final-机检报告-2026-09-30.md")
T_FONT = asset_root("artwork", "ui-reuse-2026-09-23",
"4-字体", "fusion-pixel-12px(OFL)", "fusion-pixel-12px-proportional-latin.ttf")
ZH_FONT = r"C:\Windows\Fonts\msyh.ttc"
@@ -972,10 +972,11 @@ def run_checks(board, placement, records, band, gmap, canvas_img=None):
"亮墨%s 格底L=%.3f;后备%s" % (ratios, floor_l, plate_ratios))
# A3b 图底分离:v2 阈值 Δ≥55 系色牌制时代校定(当时地板 L0.036);v3 地板提亮至 L 0.08–0.14 带后
# 与墙顶亮度差数学上必缩(墙顶 ~113 封顶,Δ≥55 要求地板 ≤L0.045,与带冲突)——v3.0 验收 2 已立
# 「墙亮/空间暗明度差为合法分类通道」,Δ 候选阈值 ≥30(灰度一眼可分),终值归冻结批校准。
check("A3b", "图底分离读数(候选 Δ≥30——v2 阈值 55 与格底分档带数学冲突,校准归冻结批)",
# 「墙亮/空间暗明度差为合法分类通道」。v3.5 冻结批(2026-09-30 批 A)定值 Δ≥30(方向稿实测 38,
# 灰度一眼可分)——候选口径退役,正式阈值落锁。
check("A3b", "图底分离读数(定值 Δ≥30——v3.5 冻结批落定,方向稿实测 38)",
(wall_top - floor_px) >= 30,
"墙顶 %.0f vs 地面 %.0f,Δ=%.0f(v2 阈值 55 系地板 L0.036 时代校定)" % (wall_top, floor_px, wall_top - floor_px))
"墙顶 %.0f vs 地面 %.0f,Δ=%.0f(v2 阈值 55 系地板 L0.036 时代校定;v3.5 冻结定值 30)" % (wall_top, floor_px, wall_top - floor_px))
# F6 墙格顶面/立面双明度带(立体断言——南向临地墙格:顶 2/3 vs 立面下 1/3,体积感机器代理)
south_cells = [(x, y) for y in range(gmap.h) for x in range(gmap.w)
if is_wall(gmap, x, y) and not is_wall(gmap, x, y + 1)]
@@ -1023,11 +1024,11 @@ def run_checks(board, placement, records, band, gmap, canvas_img=None):
edge_hits = edge_content(canvas_img)
check("A5", "画布四缘 2px 净空(零溢出)", edge_hits == 0, "缘带内容像素 %d" % edge_hits)
# A4 混排相融:小人/立绘/状态图标=在库原件;语义色==UiKit 常量
# A4 v3 口径:尺寸硬等系 v2 冻结时资产快照,现行资产已换代(例:bugbear 26×48)——方向稿验
# 「在库原件可载+语义色对表」,尺寸基线重校归冻结批(连带 §8.2 升档方向)。
check("A4", "混排相融(游戏在库资产可载+UiKit 语义色对表;尺寸基线=换代后实态,校准归冻结批)",
HERO_SRC.size[0] > 0 and PORTRAIT_SRC.size[0] > 0,
"小人源 %s(裁透明留白后 %s)/立绘 %s/状态图标原件;INK/封印黑/奖励金 == ui_kit.gd"
# A4 v3.5 冻结批(2026-09-30 批 A)尺寸基线按现行资产实态固化——立绘 46×48/棋盘小人源 32×32
# 硬等断言落锁(资产升档批若换代须显式解冻重校,断言失败=预期闸)。
check("A4", "混排相融(在库原件可载+UiKit 语义色对表+尺寸基线冻结:立绘 46×48/小人源 32×32)",
PORTRAIT_SRC.size == (46, 48) and HERO_SRC.size == (32, 32),
"小人源 %s(裁透明留白后 %s)/立绘 %s[冻结 46×48]/状态图标原件;INK/封印黑/奖励金 == ui_kit.gd"
% (str(HERO_SRC.size), str(HERO.size), str(PORTRAIT_SRC.size)))
return all(c[2] for c in CHECKS)
@@ -1149,8 +1150,8 @@ def main():
# 机检报告
with open(OUT_REPORT, "w", encoding="utf-8") as f:
f.write("# 样张 v3 方向稿机检报告(2026-09-29,art-bible v3.0——方向稿阶段,机检为参考;冻结闸=目检后机检批)\n\n")
f.write("生成:`python tools/render_sample_sheet_v3.py`;v3.0 口径:格底分档(世界底层档)/亮墨直画/色牌后备/物件级装饰/B 区舞台;断言阈值随冻结批校准。\n\n")
f.write("# 样张 v3 机检报告【冻结】(2026-09-30 批 A——v3.5 用户验收态断言定值落锁;气质终审已由 2026-09-29 用户验收豁免,台账 281)\n\n")
f.write("生成:`python tools/render_sample_sheet_v3.py`;v3.5 冻结口径:格底分档(世界底层档 L≈0.10,带 0.08–0.14)/亮墨直画三档/色牌后备/物件级装饰/B 区舞台;断言定值=A3b 图底分离 Δ≥30(实测 38)+A4 尺寸基线(立绘 46×48/小人源 32×32 硬等);F6 沿用 v3.4 双明度带口径 Δ≥18。\n\n")
f.write("## v1 否决原因 → 断言映射\n\n")
f.write("| 否决原因(2026-09-28 用户) | 断言承载 |\n|---|---|\n")
f.write("| ①显示太丑(总纲) | A6 观感密度(整板明度 std ≥50.9=v1 实测 44.31×1.15)+既有装饰变体 ≥2 种 |\n")