From 912a44541fbffabd7dd114f8538e0176d6b386e6 Mon Sep 17 00:00:00 2001 From: DKChan <524912269@qq.com> Date: Sat, 7 Nov 2026 18:52:06 +0800 Subject: [PATCH] =?UTF-8?q?=E8=90=A5=E5=9C=B0=E5=9C=BA=E6=99=AF=E9=87=8D?= =?UTF-8?q?=E6=8E=92=E6=8E=A5=E7=BA=BF(=E6=8E=A2=E9=92=88=E4=BF=AE):=20?= =?UTF-8?q?=E5=B1=82=E8=8A=82=E7=82=B9=20TextureRect=20=E5=8A=A0=20expand?= =?UTF-8?q?=5Fmode=3DEXPAND=5FIGNORE=5FSIZE=E2=80=94=E2=80=94=E9=BB=98?= =?UTF-8?q?=E8=AE=A4=20KEEP=5FSIZE=20=E6=8A=8A=E8=8A=82=E7=82=B9=E6=9C=80?= =?UTF-8?q?=E5=B0=8F=E9=AB=98=E9=A1=B6=E5=9C=A8=E8=B4=B4=E5=9B=BE=E5=8E=9F?= =?UTF-8?q?=E9=AB=98=20211=EF=BC=8C=E9=97=A8=E6=89=87=20138=20=E9=AB=98?= =?UTF-8?q?=E7=9F=A9=E5=BD=A2=E4=B8=8D=E7=94=9F=E6=95=88(ui=5Fstruct=5Fpro?= =?UTF-8?q?be=20V1=20=E6=8A=93=E5=88=B0)=EF=BC=9B=E5=8D=A1=E7=89=87?= =?UTF-8?q?=E8=A1=A5=E8=AF=A5=E6=94=B9=E5=8A=A8=E8=A1=8C=E4=B8=8E=20T1=20?= =?UTF-8?q?=E6=AD=A5=E9=AA=A4=EF=BC=9B=E8=A1=A5=E5=AE=9E=E7=8E=B0=E6=8A=A5?= =?UTF-8?q?=E5=91=8A=E4=B8=8E=E5=8F=8D=E5=93=BA=E7=82=B9=E6=B8=85=E5=8D=95?= =?UTF-8?q?=E3=80=82=E5=87=AD=E6=8D=AE:=20ui=5Fstruct=5Fprobe=20PASS(?= =?UTF-8?q?=E5=85=A8=E5=B1=8F=E7=BB=93=E6=9E=84=E6=96=AD=E8=A8=80=E9=9B=B6?= =?UTF-8?q?=E7=BA=A2)=E3=80=81=E8=90=A5=E5=9C=B0=E5=8D=95=E6=B5=8B=20exit?= =?UTF-8?q?=3D0=E3=80=81=E5=86=92=E7=83=9F=20PASS?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- game/presentation/views/camp_scene_view.gd | 1 + reports/营地场景重排接线-反哺点-2026-11-07.md | 6 ++++ .../营地场景重排接线-实现报告-2026-11-07.md | 30 +++++++++++++++++++ .../需求卡片-营地场景重排接线-2026-11-07.md | 2 ++ 4 files changed, 39 insertions(+) create mode 100644 reports/营地场景重排接线-反哺点-2026-11-07.md create mode 100644 reports/营地场景重排接线-实现报告-2026-11-07.md diff --git a/game/presentation/views/camp_scene_view.gd b/game/presentation/views/camp_scene_view.gd index 9ba77cc2..e9d8e4a6 100644 --- a/game/presentation/views/camp_scene_view.gd +++ b/game/presentation/views/camp_scene_view.gd @@ -133,6 +133,7 @@ func _build_layer_node(spec: CampSceneLayerSpec) -> Control: if tex != null: var tr := TextureRect.new() tr.texture = tex + tr.expand_mode = TextureRect.EXPAND_IGNORE_SIZE # 允许节点小于贴图原尺寸(门扇 240×211→矩形 138 高) tr.stretch_mode = TextureRect.STRETCH_SCALE node = tr else: diff --git a/reports/营地场景重排接线-反哺点-2026-11-07.md b/reports/营地场景重排接线-反哺点-2026-11-07.md new file mode 100644 index 00000000..bba90119 --- /dev/null +++ b/reports/营地场景重排接线-反哺点-2026-11-07.md @@ -0,0 +1,6 @@ +# 营地场景重排接线 · 反哺点清单(2026-11-07) + +| 文档 | 落点 | 内容 | 状态 | +|---|---|---|---| +| design/art/art-status-checklist.md 营地行 | 营地场景图行状态列 | 补「围墙件 2026-11-07 换代(1280×164 补尖+墙脚入土,显示 200 高拉伸)」事实 | 待文档批落文 | +| roadmap.md | 迭代总表 | 本批未编迭代(用户直令落表);如需补记,由编排段处置 | 待用户裁 | diff --git a/reports/营地场景重排接线-实现报告-2026-11-07.md b/reports/营地场景重排接线-实现报告-2026-11-07.md new file mode 100644 index 00000000..df1de49b --- /dev/null +++ b/reports/营地场景重排接线-实现报告-2026-11-07.md @@ -0,0 +1,30 @@ +# 营地场景重排接线 · 实现报告(2026-11-07) + +> 本批按用户 2026-11-07「落表」直接执行,未编迭代(卡片与实现同批落地,流程偏离记录在案)。 +> 卡片:reports/需求卡片-营地场景重排接线-2026-11-07.md(复核记录两轮 24 发现全处置) + +## 各卡状态 + +| 卡 | 状态 | 读数 | +|---|---|---| +| T0 围墙件入包 | 完成 | 1280×164 RGBA;palette_check 对八件基线 12 色零新增;path_check 0 | +| T1 布局表换代 | 完成 | 十层矩形+wall_band+schema 默认值/注释同步;营地单测 exit=0 | +| T2 新值钉断言+收口 | 完成 | 新增 5 条钉值断言(围墙/门扇/告示板/围墙带/六件落位)全 PASS;冒烟 15 项 0 失败;ui_struct_probe PASS | + +## 实现决定记录 + +- 门扇 hotspot 高 147=贴图 138+9 余量(沿用旧表口径)。 +- 六件 hotspot 按旧表同偏移平移(forge y−46、chest y−46/x−12/宽+24、notebook y−14/高+14、campfire y−46/高 80、board 高+19、dummy 同贴图)。 +- 视图层 `_build_layer_node` 加 `expand_mode = EXPAND_IGNORE_SIZE`:否则 TextureRect 被贴图原高顶住最小尺寸,门扇 138 高矩形不生效(探针 V1 抓到,已修)。 + +## 实机目检总清单(登记不阻塞,用户自排) + +1. 营地屏:围墙带 y220–420、桩尖完整、墙脚无贯通直线(入土感)。 +2. 大门:240×138 显示、底压墙底 420、门扇在洞口 x520–760 内。 +3. 告示板:(845,241,130,121) 挂墙、命中可点。 +4. 其余六件落位与命中可点(锻炉/宝箱/笔记本/篝火/木桩/帐篷承载不动)。 +5. 背景层拼接接缝被围墙遮住、无可见缝。 + +## 遗留读数义务 + +- 无新增遗留读数;远端 CI 由 post-merge 钩子推送,按需 `tools/ci_check.sh <合并提交>` 现查。 diff --git a/reports/需求卡片-营地场景重排接线-2026-11-07.md b/reports/需求卡片-营地场景重排接线-2026-11-07.md index 6d776770..96721fd5 100644 --- a/reports/需求卡片-营地场景重排接线-2026-11-07.md +++ b/reports/需求卡片-营地场景重排接线-2026-11-07.md @@ -71,6 +71,7 @@ - 取用:T0 的素材。产出:`game/data/tables/camp_scene_layout.tres`(十层+表级值)。 - [ ] 按 §3 表逐字改十层 texture_rect/hotspot 与 wall_band → 跑 `godot --headless --path game --script res://tests/unit/presentation/camp_scene_layout_test.gd`(加载期 validate+钉值+关系谓词全绿,exit 0) +- [ ] `_build_layer_node` 的 TextureRect 加 `expand_mode = EXPAND_IGNORE_SIZE`(否则门扇节点被贴图最小高 211 夹住、矩形 138 不生效)→ 场景探针 ui_struct_probe camp V1 转绿 ### T2 新值钉断言+收口(≈0.25 工作日) @@ -86,6 +87,7 @@ | 围墙显示矩形 220/200(判据出处 design/ux/camp.md:29) | camp_scene_layout.tres wall | V14 围墙矩形钉值(camp_scene_layout_test.gd `_test_layout_hotspot_geometry`) | 单元 | load 表+validate | texture_rect 取值 | 既有:营地场景图十层铺底与门洞留空呈现 | | 门/板跟随(判据出处 design/art/camp-scene-prompts.md:250) | .tres gate/board | V14 门板矩形钉值 | 单元 | 同上 | texture_rect 取值 | 既有:营地场景图十层铺底与门洞留空呈现 | | 其余六件落位(判据出处 design/art/camp-scene-prompts.md:244) | .tres 六件 | V14 六件落位钉值+七命中区几何红线(validate+不相交+不越界) | 单元 | 同上 | texture_rect/hotspot 取值 | 既有:营地场景图十层铺底与门洞留空呈现 | +| 门扇显示高 138(判据出处 design/art/camp-scene-prompts.md:250) | camp_scene_view.gd `_build_layer_node` 加 `EXPAND_IGNORE_SIZE` | 场景探针 ui_struct_probe camp V1「层贴图矩形≠layout 表」 | 探针 | `res://probe/ui_struct_probe.tscn`(camp 段) | 节点 position/size 逐值 | 既有:营地场景图十层铺底与门洞留空呈现 | | 围墙件换代(判据出处 design/art/art-bible.md:212) | scene_camp_wall.png | T0 `palette_check`/`path_check` | 资产 | 文件读数 | 色数 12、零新增色 | 既有:营地场景图十层铺底与门洞留空呈现 | | 墙脚入土(判据出处 design/art/art-bible.md:396) | 围墙件底行 | 目检(游戏内终审,登记式) | 目检 | 营地屏 | 墙底无贯通直线 | 既有:营地场景图十层铺底与门洞留空呈现 | | 营地屏铺底不回归(判据出处 design/ux/camp.md:29) | 十层矩形整体 | 场景探针 `shot_probe` camp 截图+`shot_checker` A 段(角色/面板骨架不回归) | 探针 | `--headless --path . res://probe/shot_probe.tscn` | 截图色彩数/骨架 | 既有:营地场景图十层铺底与门洞留空呈现 |