diff options
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/evidence/p73-analysis.txt | 28 | ||||
| -rw-r--r-- | docs/evidence/p73-dusk.png | bin | 0 -> 193559 bytes | |||
| -rw-r--r-- | docs/evidence/p73-morning.png | bin | 0 -> 188561 bytes | |||
| -rw-r--r-- | docs/evidence/p73-night.png | bin | 0 -> 185380 bytes | |||
| -rw-r--r-- | docs/evidence/p73-noon.png | bin | 0 -> 106218 bytes | |||
| -rw-r--r-- | docs/维护说明.md | 17 |
6 files changed, 45 insertions, 0 deletions
diff --git a/docs/evidence/p73-analysis.txt b/docs/evidence/p73-analysis.txt new file mode 100644 index 0000000..a8a0243 --- /dev/null +++ b/docs/evidence/p73-analysis.txt @@ -0,0 +1,28 @@ +P73(昼夜光照层次:清晨/正午/黄昏/夜晚四档)证据分析 — 真实 Desktop xvfb 1280x720 +钩子:LV_P73_SHOT=1(同一桥头光源机位,6/12/18/22 各一帧,画面差异只来自光照) +路径:tick → periodAtTick → periodLighting(环境色调/覆盖色/VeilAlpha/灯光) + 连续 blend/warmth veils + +p73-morning: hour=6.0 tick=1296000 period=清晨 blend=0.2 lantern=0.32 tint=(255, 229, 212) veil=20 +p73-noon: hour=12.0 tick=2592000 period=正午 blend=0.0 lantern=0.0 tint=(255, 255, 255) veil=0 +p73-dusk: hour=18.0 tick=3888000 period=黄昏 blend=0.0 lantern=0.6 tint=(255, 255, 255) veil=52 +p73-night: hour=22.0 tick=4752000 period=夜晚 blend=1.0 lantern=1.0 tint=(118, 136, 184) veil=26 + + +p73-morning.png: size=1280x720 brightness=107.9 R=123.0 G=118.7 B=81.8 warmth(R-B)=+41.2 std=34.1 dark_block=0 +p73-noon.png: size=1280x720 brightness=86.4 R=71.0 G=107.8 B=80.4 warmth(R-B)=-9.5 std=36.5 dark_block=0 +p73-dusk.png: size=1280x720 brightness=97.8 R=113.8 G=111.5 B=68.0 warmth(R-B)=+45.8 std=39.2 dark_block=0 +p73-night.png: size=1280x720 brightness=89.8 R=65.7 G=90.1 B=113.6 warmth(R-B)=-47.9 std=40.2 dark_block=0 + +diff p73-morning vs p73-noon: differing_pixels=905809 +diff p73-morning vs p73-dusk: differing_pixels=905399 +diff p73-morning vs p73-night: differing_pixels=921390 +diff p73-noon vs p73-dusk: differing_pixels=905696 +diff p73-noon vs p73-night: differing_pixels=921368 +diff p73-dusk vs p73-night: differing_pixels=921390 + +brightness order: morning(107.9) > dusk(97.8) > night(89.8) > noon(86.4) +warmth order: dusk(+45.8) > morning(+41.2) > noon(-9.5) > night(-47.9) + +verdict=PASS + four periods have distinct parameters; noon identity, dusk lamps on, night lamps full; + real frames render 1280x720, differ pairwise, night darker / noon brighter / dusk warmer. diff --git a/docs/evidence/p73-dusk.png b/docs/evidence/p73-dusk.png Binary files differnew file mode 100644 index 0000000..1ad7fa4 --- /dev/null +++ b/docs/evidence/p73-dusk.png diff --git a/docs/evidence/p73-morning.png b/docs/evidence/p73-morning.png Binary files differnew file mode 100644 index 0000000..1126d8b --- /dev/null +++ b/docs/evidence/p73-morning.png diff --git a/docs/evidence/p73-night.png b/docs/evidence/p73-night.png Binary files differnew file mode 100644 index 0000000..d7da3d8 --- /dev/null +++ b/docs/evidence/p73-night.png diff --git a/docs/evidence/p73-noon.png b/docs/evidence/p73-noon.png Binary files differnew file mode 100644 index 0000000..2458546 --- /dev/null +++ b/docs/evidence/p73-noon.png diff --git a/docs/维护说明.md b/docs/维护说明.md index 5fa87a4..9d27dd1 100644 --- a/docs/维护说明.md +++ b/docs/维护说明.md @@ -91,6 +91,23 @@ final_digest 固定 953775FAEB2FDDE97289491AA260BD8D390C571E48A7A13AD2CB6FB7124F `CharacterFeetSitOnTheTileGroundLine`;图像级 `scripts/check-no-white-blocks.py` 对夜晚录帧断言不存在 ≥64×64、每通道 ≥250、alpha ≥250 的方块(P13 旧帧 42/69 命中,修复后 0 命中)。 +## 昼夜光照档(P73) + +- 既有 `lightingBlend`(0 白天→1 夜晚,dawn 4.0–6.5 / dusk 20.0–22.0)与 `transitionWarmth` + (晨曦/黄昏三角暖色峰)是**连续曲线**;P73 在其上再叠一层**四时段档**,填补 17:00–19:15 + 原本与正午无差的黄昏空档。两者都由 `world.Tick` 纯函数导出,Kernel 不参与。 +- `M6Presentation.periodAtTick`:边界与 `timePeriodLabel` 完全一致(<5 夜晚、<8 清晨、 + <17 正午、<21 黄昏、否则夜晚)→ `Morning | Noon | Dusk | Night`。 +- `M6Presentation.periodLighting`:纯数据参数表,每档给 `AmbientTint`(乘性环境色调)、 + `Veil`/`VeilAlpha`(加性覆盖色,经 `VillageArt.premultiply`)、`LanternGlow`(灯光强度)。 + **正午档为恒等**(白 tint / `VeilAlpha=0` / 灯光 0),故既有正午白平衡不变。 +- 渲染接线(`Game.fs` `DrawWorldView`):`worldTint = multiplyTint profile.WorldTint period.AmbientTint`; + `lanternGlow = effectiveLanternGlow tick`(连续曲线与时段档取大,黄昏 0.6 起灯笼点亮、夜晚 1.0); + 时段覆盖色在 golden/moon veil 之后最后叠上。HUD/室内界未改。 +- **回归**:`P73LightingTierTests`(四档两两不同、正午恒等、黄昏灯亮、夜晚灯满、时段边界与 + `timePeriodLabel` 一致)。**证据**:`scripts/analyze-p73.py` 对 `LV_P73_SHOT=1`(同一桥头机位 + 6/12/18/22 四帧)断言参数一致 + 亮度/暖度可辨 + 两两 pixel diff,落 `docs/evidence/p73-*`。 + ## 性能基线命令 ```bash |
