summaryrefslogtreecommitdiff
path: root/src/LivingVillage.Desktop/CjkGlyphAtlas.fs
Commit message (Collapse)AuthorAgeFilesLines
* p61: G1 字形图集补齐 16 个 UI 用字(红→绿),中文界面完整Somhairle H. Marisol7 days1-1/+1
| | | | | | | | | | | | | | | | | | | | | | | 红:新增 src/LivingVillage.Desktop.Tests/P61GlyphCoverageTests.fs——扫描 Desktop 源码 字符串字面量内的全部 CJK 字,断言 100% 在 CjkGlyphAtlas 内;并逐字钉 G1 缺的 16 字(冬包卷品夏料春玩秋第背车轴页香鱼)、requiredUiLabels、以及运行期文案 (日历「春·第1天」/页脚「第 1/3 页…翻页」/「V 卖出 背包物品×1」/鱼卷轴香料玩车回)。 实现前实测 3 失败:缺字形 16。 绿:向 CjkGlyphAtlas.characterTable 补入 16 字(保持有序、去重),同步 Assets/cjk-glyphs.txt,并跑 scripts/generate-cjk-glyph-atlas.sh 用既有 Noto Sans CJK 重生成预生成 PNG:384x504(16x21 格,+16 字),16 个新字格均有真实字体墨迹 (ink_px 148-233,非程序几何伪字形)。更新 PrototypeTests 的图集几何常量 (307→323、rowCount 20→21、pixelHeight 480→504)。 证据:LV_P61_SHOT=1 拍 2 帧(p61-calendar 右上日历「春 · 第1天」;p61-dialog-footer 真实 Interact 开对话,页脚「第 1/3 页…翻页」+ 选项「V 卖出 背包物品×1」)。 analyze(p61-analysis.txt):缺字空白位=0、黑块=0、白块=0/2;全部抽检文案 missing_glyph_slots=0。钩子为 Game.fs 纯追加(53 行,0 删除),未动 HUD 结构。 回归(p61-verification.txt):Desktop 308/308(+4 P61)+ Kernel 119/119; --performance-baseline ×3 digest 953775FAEB2F… 不变,determinism PASS。 未改 Kernel/Sim,未引外部素材(沿用既有 Noto 字体来源),未 push。
* feat(kernel,desktop): P31 step3 story annals + identity entry + glyph atlasSomhairle H. Marisol13 days1-1/+1
| | | | | | | | | | | | | | | | | | - Sim.AnnalKind gains StoryAnnal (summary lives in the existing Summary field); WorldSave v3 serializes it with the new 'story' token. v1/v2 saves never contain the token and stay byte-identical; v3 save -> load -> save roundtrips byte-for-byte (tested). - Occupation.Story.identitySummaryOf: plain chronicle-style identity line written to the yearbook at game start (design section 3), e.g. yi-da-yu-wei-sheng. - Desktop: story summaries render in the chronicle panel; StartNewGame appends the identity annal; chooseIntent now routes responses through Occupation.biasResponse and advances the storyline (one stage per player dialogue) with the summary appended as a StoryAnnal. - M5View gains Seed (world seed source for the story start-day hash). - Chinese copy synced into requiredUiLabels; cjk-glyphs.txt + CjkGlyphAtlas.characterTable extended 238 -> 307 glyphs (384x480), atlas regenerated with the deterministic script. - 4 new kernel tests (115 -> 119); performance digest unchanged.
* feat(desktop): P16 启动画面淡入(Esc/空格跳过)+ ↵Somhairle H. Marisol2026-09-221-1/+1
| | | | 开始界面收敛三项(开始/读档/退出)+ CJK 补字 238
* fix(ui): P15 补齐职业/任务中文用字(CJK 图集 ↵Somhairle H. Marisol2026-09-211-1/+1
| | | | | | | | | | | 197->228),requiredUiLabels 锁定防复发 - CjkGlyphAtlas 字表 + Assets/cjk-glyphs.txt + cjk-glyph-atlas.png 重生成(384x360,15 行): 新增 职/业/收/货/转/事/论/理/粮/工/翻/土/捕/渔/询/送/帮/农/夫/郎/书/生/待/接/受/今/日/任/务/行/中 共 31 字,覆盖职业选择页与 T 面板全部模板/状态文案,消除方框缺字。 - ChineseText.requiredUiLabels 增职业/模板/状态标签,既有 FormalChineseUiLabelsUseTheRealGlyphAtlasBoundary 与 RequiredUiLabelsAreFullyCoveredByTheGlyphTable 继续强制全字形可渲染。 - PrototypeTests 几何常量同步 197->228、13->15 行、312->360 像素。Desktop 87 全绿。
* fix(desktop): 修复 HUD 缺字并统一轻量面板与情境提示Somhairle H. Marisol2026-09-211-1/+1
| | | | 字符表扩充至 197 字(补 间/门/谈/体/屋/返/×/,/:等全部 UI 用字),用 Noto Sans CJK 重新生成图集并逐字校验;新增字符表覆盖全部 UI 文案、瞬态状态 2.5 秒过期、对话完成后回到轻量面板等回归测试;户外与室内统一左下角轻量 HUD,互动日志改为短暂反馈;样例脚本保留 E 交谈 提示与对话菜单停留帧。
* feat(m6c): 完成江南村庄中文交付Somhairle H. Marisol2026-09-211-0/+55
完成江南村庄场景、角色表现和中文界面的 M6c 交付范围。 新增 CJK 字形图集、中文文案与运行时加载,补充民居情境交互和确定性村庄美术表现。 更新资源复制与 Linux/macOS 打包校验,加入 188 字符清单、资源许可说明和对应原型测试。 补充江南美术方向与 M6c 交付说明,并保持原有模拟内核和桌面构建入口不变。