English
-
Battle motion-vector replay follow-up (P2 remains in progress): added exact shader-slot mappings for three observed battle vertex programs and a shared quad-list geometry helper. CPU checks passed 768 clips; GPU fixtures compiled the six mapped microcodes to DXIL/SPIR-V and passed Vulkan replay checks for alpha discard, palette motion, and two-quad geometry. A bounded RTX 5080 Vulkan manual battle run on candidate
cb41c99recorded 2,476 completed FSR uses and no motion-vector first failures in that run. This is bounded scene evidence; broader scene/platform coverage and full P2 acceptance remain open.02d8remains unmapped, and thef6mapping is fixture-only with no observation in that game run. -
Experimental opt-in FSR SR development updates:
- Added the fixed FidelityFX SDK v1.1.4 (FSR 3.1.4) source-build path for Windows and native Linux behind
LO_ENABLE_FSR=ONandLO_REQUIRE_FSR=ON, with bounded Windows execution evidence for all four presets and native Linux RADV Quality, Performance and Native AA submissions. Full quality/performance, Steam Deck, player, and DLSS frame-generation acceptance remain pending. - Added opt-in three-frame FSR input/output capture with completed-submission metadata, camera/depth motion diagnostics, and bounded right-stick test input. Controlled Windows translation/yaw checks passed for static geometry; this is not full image-quality acceptance.
- Added explicitly enabled raw material-alpha replay for six audited shader pairs, with R8 MAX accumulation and same-draw color/depth readback diagnostics. Windows and native Linux RADV town captures produced nonzero alpha while preserving original color and depth bytes. Postprocess propagation and SDK reactive/transparency inputs remain pending.
- Added opt-in alpha-mask resolve/fetch bridging with frame, allocation, write-version and final-image checks. A Windows town capture copied 409,440 pixels exactly, including 150 nonzero pixels, and linked reused resolves to the actual shader bindings. Later P2 work verified the Windows SDK reactive mask input; Linux builds were performed for earlier bridge revisions, not the latest battle shader mappings.
- Added opt-in completed-submission GPU timestamps for the isolated FSR prepare/SDK/encode/copy path. Windows runtime diagnostics produced valid query records; this does not establish a performance improvement.
- Added pixel coverage qualification for fractional viewports and exact rectangle corner checks for P2 R8 alpha postprocess propagation. Intersected resolve validRect bounds to keep padding invalid, added
depth_color_tile_cleartracking with qualifying inset geometry replacement and unknown writer invalidation, permitted raw retention on initial clear while preserving old raw source disabling, separated input missing from sampler unsupported rejections, and added opt-in trace diagnostics. Python reference tools corrected Vulkan Y coordinates, fixed project HLSLFLT_MINnegative bounds handling, and added an independent clear-background checker suite. - Verified P2 postprocess routing via CPU suites (
LoNativeDlssP2RoutingTest,LoFsrAlphaPropagationPolicyTest), Python synthetic clear background and tonemap regression cases, and Windows RTX 5080 Vulkan 1280x720 FSR Quality capture (fsr-postprocess-windows-03): all 6 audited draws recorded and published with 0 interior/background pixel mismatches across 5 blur draws and 1 tone draw (correcting referenceFLT_MINartifact; original 1-pixel report preserved), 0 byte diff across original color copies, and completed independent oracle transfer chains. Detailed evidence and artifacts are recorded in FSR progress notes. - Verification limits remain bounded: full depth invariance, host prefilter substitution, broad P2 visual quality, and latest Linux battle-mapping coverage are not established. The later P2 checkpoint has separate bounded raster-edge, SDK-mask, color, and performance evidence; see FSR progress notes and the dated handoff. No full P2 acceptance is claimed.
- Fixed presented screenshots interpreting BGRA swapchain pixels as RGBA; verified with a native Linux Native AA capture.
- Repaired FSR record-time transient input rejection so a single-frame fallback can retry, and stop GPU work on prepare-stage
DeviceLost. The generated FidelityFX Vulkan memory selector requires all requested property bits while allowing CPU-visible device-local memory on UMA, excluding unenabled AMD device-coherent memory types; the default non-CPU-only native DLSS test configuration no longer registers three FSR tests twice. Windows/Linux CI passed 13/13 CPU tests and Linux native FSR-on/off object and SPIR-V compilation; the corrected non-CPU-only CMake configuration lists 16 tests without running them, andnative-dlss-cpu.ymlwas updated with non-CPU-only configure and single-entry CTest registration checks on Windows and Linux. RTX 5080 Vulkan fixture execution passedLoFsrAdapterGpuTest --transient-only: Frame N normal dispatch and readback; Frame N+1 matching request and valid textures with NaN delta time returnedInputUnavailableanduseId 0without GPU submission, preservedlastDispatchRenderFrameId == N, and kept the session Ready; Frame N+2 restored valid delta time withinput_reset=falseand successfully dispatched with SDK gap reset (blue 128->96); and Frame N+3 continued without gap reset. Release packaging workflows (release.yml,tools/build_release.bat) were updated to generate shared Vulkan shaders from pinned FidelityFX SDKc6efa6bf7f2027b3ec94f28578bb5965eabb9e55, forward parameters, and enforce FSR on release jobs with license verification. A local Windows Clang incremental build linked the FSR static library,LoShaderPackTool(SHA-256830b314da541b280d9816f069f6069d095a247fcdcc9929a35ff01571f0fe93a), and full game executableLostOdysseyRecomp.exe(3689f20b3eab2558de60ba8143822c5fa4aa116fb9bad4ed08e6facecbf5765c). The user confirmed current Windows visuals without issue, and accepted Linux verification based on execution reports of game linkage andLoFsrAdapterGpuTest --transient-onlypassing on an AMD Radeon 8060S RADV STRIX_HALO environment. These results conclude current visual and platform checks without establishing deterministic production renderer fault-injection handling or whole-game P2 gate completion. Updated CI and release workflows remain unexecuted in Actions, and P2 remains in progress. See FSR repair notes.
- Added the fixed FidelityFX SDK v1.1.4 (FSR 3.1.4) source-build path for Windows and native Linux behind
-
Native DLSS SR/DLAA lifecycle and capability coordination updates (BR-01, BR-02):
- Fixed temporal history lifecycle handling so DLSS SR and DLAA properly advance temporal frame time and preserve jitter across frame gaps without spurious resets (BR-01).
- Resolved capability status data race between CPU planning and GPU worker updates by publishing a mutex-protected by-value device snapshot (BR-02).
-
Graphics menu stability and runtime DLSS execution feedback updates (BR-03 & GraphicsRow):
- Refactored Graphics menu row indices into a shared
GraphicsRowenumeration (0..10), publishing row IDs and updating navigation, help text, action handlers, and test fixtures by ID to eliminate positional index drift. - Upgraded DLSS runtime status feedback: the
Activestatus now strictly requires observing that the production renderer adopted DLSS RGB output and completed checked Vulkan command submission. - Surfaced specific runtime fallback and latching failure reasons, covering pending motion pipeline, unknown/unqualified color encoding, feature recreation, promotion mapping failure, no eligible drawables, waiting for initial results, input probe mode, and stopped status.
- Added identity filtering across device epoch, request signature, and geometry epoch; preserved new fallback reasons across intra-frame plan switches; and published an immediate stopped status upon
SubmitVulkanorWaitForGpuFencefailures. - Retained uncommitted menu edit notes while reporting active mode and extents directly from
execution.plan, without claiming GPU execution completion, presentation, or full-frame DLSS. - Focused verification passed: new CPU unit suite
LoDlssRuntimeStatusTest(37 checks), updatedLoDlssCapabilitySnapshotTest(43 checks re-run following revised Active semantics), standalone submission error injectionLoVideoSubmissionStopTest(14 checks), hardware synthetic Vulkan execution on an RTX 5080 without NGX (--status-onlyand--plan-identitymulti-case plan switches and batch non-demotion), and fullLoMenuFlowTestgenerating 18 BMP captures and notices underout/br03-dlss-menu/. Prior BR-01 CPU/owner test results and existing GPU suites were preserved without re-runs. Production translation units compiled cleanly, and the full game executable targetLostOdysseyRecomplinked cleanly (build/LostOdysseyRecomp/LostOdysseyRecomp.exe, 93,565,952 bytes, built from0625923plus uncommitted changes includingGpuSwappreprocessing fix, accompanied bynvngx_dlss.dll,dxcompiler.dll, anddxil.dll). In-game visual quality verification, player acceptance, and release publication remain pending. See native DLSS validation for detailed boundaries.
- Refactored Graphics menu row indices into a shared
-
Diagnostics logging and F1 render-state capture updates:
- Settings save feedback now explicitly logs upscaler, quality, and frame-rate selections upon success.
- Added structured DLSS runtime status logging using existing phase/execution classifications (
Off,AwaitingExecution,Submitted,Fallback,NeedsVulkanRestart,DeviceUnavailable,TemporaryFallback,InputProbeOnly,GpuStopped) with readable reasons, active extents, render frame, and identity context (deviceEpoch,requestSignature,geometryEpoch,submissionSerial). Transitions deduplicate repetitive output while recovery logs as normalSubmitted;Submittedsignifies target adoption and checked submission, not GPU execution completion. - F1 render-state capture (
screenshot.bmp) updated to capture the final pre-present swapchain image immediately before display handoff when the active rendering path employs DLSS/letterbox/post-processing, whileguest-frontbuffer.bmpretains the resolved host texture; each frame's pair shares a matchingXE_SWAPticket, write frame, extents, and submission serial or D3D fence. Zero-request frames perform no readback allocations or copies. - Fixed a crash (access violation in
VulkanTextureViewdestructor) when switching from DLSS Quality to DLAA caused by external depth texture destruction preceding retired motion stencil views. Retired framebuffer views now bindexternalDepthidentity, releasing depth views immediately upon GPU completion before texture destruction. - Implemented synchronous NGX Evaluate input/output capture: Controller records an isolated pre-Evaluate input color copy and post-Evaluate scratch output copy with layout restoration to GENERAL, ahead of composite and UI passes. Capture exports
dlss-evaluations.json,dlss-input-NNN.bin,dlss-input-NNN-preview.bmp,dlss-output-NNN.bin, anddlss-output-NNN-preview.bmp(in RGBA8 or RGBA16F formats with informative previews, jitter samples, reset flags, and execution identities). Frames without evaluation record explicit fallback reasons without fabricating images. - Focused verification passed: new CPU suite
LoDlssStatusLogTest(400 logger checks), hardware fixtureLoPresentCaptureTest(4 Direct3D 12 and Vulkan multi-frame/error cases), capture close helper test (LoPresentCaptureTest --case close), standalone depth retirement suitemotion_replay_gpu_test.exe --depth-retirement-only(26 checks on RTX 5080 Vulkan D32S8), and evaluate capture suitesLoDlssEvaluateCaptureContractTest.exe --evaluate-capture-contract-onlyandLoNativeDlssRendererTest.exe --evaluate-capture-only(withmotion_renderer_compileclean compilation). The full game executable targetLostOdysseyRecompcompleted linking successfully (build/LostOdysseyRecomp/LostOdysseyRecomp.exe, 93,635,072 bytes, SHA-25608d50e3774d18a02d4f6eaf2267472e9fab75db36e3ee970980aa96faf641e9d, UTC 2026-09-23 02:32:58 / local 2026-09-22 20:32:58 -0600, built from0625923plus uncommitted changes with source IDbdd9539ee4f176bdda0d9660bb5621b8a90a09acf8f8faa8427c10f2075c2688; earlier 16:24:35 and 19:33:37 intermediate builds preserved). In-game visual quality verification, player acceptance, and release publication remain pending.
-
Portable shader pack merge tooling and candidate consolidation (
LoShaderPackTool):- Added
mergesubcommand toLoShaderPackTool(LoShaderPackTool merge <baseline> <decrypted-image> <manifest.tsv> <output-dir>) with tab-separated manifest parsing (action\tstage\thash\tsource\tprovenance), selectiveinclude/excludeactions, microcode translation and DXC compilation for new shaders, and directWriter::Importpreservation of baseline shaders, metadata, and omissions without recompilation. - Enforced read-only input protection, exclusive temporary directory staging before atomic publication, existing target directory rejection, and SPIR-V code generation through repository-bundled DXC. Focused core and merge unit tests passed.
- Executed a local merge producing candidate pack
out/merged-shaders/portable_vk.lospv(178,332,830 bytes, SHA-256b486c87d121968bcec67fae6bc1aa7926378455281bc8b2a221409b8c06c6e2b): imported 28,482 baseline shaders and compiled 45 new microcodes from recent gameplay caches to reach 28,527 total shaders (0 skipped, 1 excluded:vs_8f6ce5a4f714294adue to missing source metadata). Runtime compatibility and payload integrity passed verification (all_payloads_verified: true,runtime_compatibility_verified: true). The pack has not replaced the active game pack or been uploaded/bundled into release distributions. See Portable Shader Pack.
- Added
简体中文
-
战斗运动矢量 replay 后续(P2 仍在进行中):为三个实测战斗顶点程序增加精确 shader-slot 映射,并抽取共享 quad-list 几何辅助函数。CPU 检查通过 768 个 clip;GPU fixture 将六段映射 microcode 编译为 DXIL/SPIR-V,并通过 Vulkan replay 的 alpha discard、调色板运动和双 quad 几何检查。RTX 5080 Vulkan 上针对候选版本
cb41c99的有界手动战斗运行记录了 2,476 次已完成 FSR 使用,本次运行没有运动矢量首错记录。这是限定场景证据;更广场景与平台覆盖及完整 P2 验收仍未完成。02d8仍未映射;f6映射仅在 fixture 中验证,未在该游戏运行中观察到。 -
实验性可选 FSR 超分开发更新:
- 增加固定 FidelityFX SDK v1.1.4(FSR 3.1.4 实现)的源码构建路径,通过
LO_ENABLE_FSR=ON与LO_REQUIRE_FSR=ON在 Windows 和原生 Linux 选择性启用;Windows 四档已有有界运行证据,原生 Linux RADV 已有 Quality、Performance 和 Native AA 真实提交;完整画质/性能、Steam Deck、玩家及 DLSS 帧生成验收仍待完成。 - 增加显式启用的 FSR 三帧输入/输出捕获、提交完成元数据、相机/深度运动诊断及有界右摇杆测试输入。Windows 受控移动/旋转的静态几何检查通过,不代表完整画质验收。
- 增加显式启用的原始材质 alpha replay,覆盖六组已审计着色器,使用 R8 MAX 累积并提供同一次绘制的颜色/深度读回诊断。Windows 与原生 Linux RADV 城镇捕获均获得非零 alpha,原颜色和深度字节保持不变;后处理传播与 SDK reactive/transparency 输入仍待完成。
- 增加显式启用的 alpha mask resolve/fetch 桥接,核对帧、分配、写入版本及最终绑定图像。Windows 城镇实景的 409,440 个复制像素完全一致,其中 150 个非零,并将复用 resolve 关联到实际着色器绑定。后续 P2 工作已验证 Windows SDK reactive mask 输入;Linux 构建对应较早的桥接版本,不覆盖最新战斗 shader 映射。
- 增加显式启用的 FSR prepare/SDK/encode/copy 段 GPU timestamp,在提交完成后读取。Windows 实景已取得有效查询记录,不代表性能收益。
- 增加针对 P2 R8 后处理传播的支持小数 viewport 的像素覆盖判定与精确矩形角点检查。resolve 阶段采用 validRect 交集裁剪并确保 padding 保持无效,接入真实
depth_color_tile_clear全量清屏追踪并支持合格内缩(inset)几何替换与未知写入者失效,首次 clear 允许保留 raw 收集且旧 raw 禁用策略保持有效,细化区分输入缺失与采样器不支持等回退原因,并增加选择性诊断 trace 日志。Python 离线参考工具修正了 Vulkan Y 轴坐标与项目 HLSLFLT_MIN负极值处理,并加入独立的 clear 背景检查套件。 - 定向验证通过 CPU 测试(
LoNativeDlssP2RoutingTest、LoFsrAlphaPropagationPolicyTest)、Python clear 背景与 tonemap 回归用例,以及 Windows RTX 5080 Vulkan 1280x720 FSR Quality 实景运行(fsr-postprocess-windows-03):6 个已审计 draw 全部成功 record/publish,5 组 blur 与 1 组 tone 逐像素比对零差异(修正参考端FLT_MIN误解,原单像素失败报告原样保留),原始颜色零差异,且独立 oracle 传输链与最终场景提交全部完成。详细证据见 FSR 进度记录。 - 验证范围仍有限:尚未证明完整深度不变性、host prefilter 替换与广泛 P2 画质;最新战斗 shader 映射也未在 Linux 验证。后续 P2 检查点另有有界 raster edge、SDK mask、色彩与性能证据,详见 FSR 进度记录及日期交接;不代表 P2 整体验收。
- 修复最终呈现截图将 BGRA 交换链像素按 RGBA 解读的问题,已用原生 Linux Native AA 截图验证。
- 修复 FSR 录制阶段暂态输入拒绝,使单帧回退后可重试,并在准备阶段遇到
DeviceLost时停止 GPU 工作。生成的 FidelityFX Vulkan 内存选择器要求全部请求属性位匹配,允许 UMA 的 CPU 可见 device-local 内存,排除未启用的 AMD device-coherent 类型;默认非 CPU-only 原生 DLSS 测试配置不再重复注册三项 FSR 测试。Windows/Linux CI 的 CPU 测试均为 13/13 通过,Linux 原生 FSR 开启/关闭对象与 SPIR-V 编译通过;修正后的非 CPU-only CMake 配置列出 16 项测试,未执行测试;native-dlss-cpu.yml补充了双平台非 CPU-only CMake 配置与 CTest 单次注册校验。RTX 5080 Vulkan 实测通过LoFsrAdapterGpuTest --transient-only:N 帧正常 dispatch 与读回;N+1 帧相同请求与有效纹理下传入 NaN 帧间隔,返回生产Controller::RecordIsolated状态InputUnavailable与useId 0且不提交 GPU,保持lastDispatchRenderFrameId == N与会话 Ready;N+2 帧恢复有效间隔且input_reset=false,成功 dispatch 并触发 SDK gap reset(蓝色通道128->96证实新输入);N+3 帧无 gap reset 持续 dispatch。发布工作流(release.yml、tools/build_release.bat)更新为从固定 SDK commitc6efa6bf7f2027b3ec94f28578bb5965eabb9e55生成共享 Vulkan shader 产物,转发参数并在发布任务打包中增加 license 检查。本地 Windows Clang 增量构建已成功链接 FSR 静态库、LoShaderPackTool(SHA-256830b314da541b280d9816f069f6069d095a247fcdcc9929a35ff01571f0fe93a)与完整游戏可执行文件LostOdysseyRecomp.exe(SHA-2563689f20b3eab2558de60ba8143822c5fa4aa116fb9bad4ed08e6facecbf5765c)。用户已确认 Windows 当前画面无问题,并依据 Linux 执行环境(psvita distrobox psbuild、AMD Radeon 8060S RADV STRIX_HALO)的游戏链接与LoFsrAdapterGpuTest --transient-only通过报告确认 Linux 验证通过。本轮画面与平台核验已告收尾,但不代表确定性生产渲染器故障注入序列或完整 P2 门禁全部通过;更新后的 CI 与 Release 工作流尚未在 Actions 中运行,P2 仍在进行中。详见 FSR 修复记录。
- 增加固定 FidelityFX SDK v1.1.4(FSR 3.1.4 实现)的源码构建路径,通过
-
原生 DLSS SR/DLAA 生命周期与能力协调更新(BR-01、BR-02):
- 修复时序生命周期处理,使 DLSS SR 与 DLAA 在正常推进时正确更新帧时间,并在长间隔后保留抖动,避免异常重置历史(BR-01)。
- 通过互斥锁保护的按值设备快照,消除 CPU 规划器与 GPU 工作线程间的能力读取数据竞争(BR-02)。
-
图形菜单稳定性与 DLSS 运行时执行反馈更新(BR-03 与 GraphicsRow):
- 将图形设置菜单行下标重构为共享的
GraphicsRow枚举(0..10),帮助文本、焦点导航、选项变更与测试用例统一按行 ID 索引,消除数字下标错位风险。 - 增强 DLSS 运行时状态反馈:仅当确认真实渲染器实际采用 DLSS RGB 目标且经 checked 检查成功提交 Vulkan 命令后,菜单才显示为已采用并提交(Active 对应已提交输出,非宣称整帧 GPU 呈现或实际完成)。
- 提供细分的执行层回退与闭锁失败原因,包括运动矢量管线就绪中(motion pending)、未确认色彩编码(Unknown)、feature 重建中、目标提升失败、无合格绘制目标、等待首个结果、输入探针模式及停止运行。
- 增加设备周期、请求签名与几何周期身份过滤;同帧 plan 切换保留最新失败原因;在
SubmitVulkan或WaitForGpuFence失败时立即发布停止状态。 - 菜单运行模式与分辨率尺寸直接取自
execution.plan,并保留未保存编辑项的附加提示说明,不宣称 GPU 完成、呈现或整帧 DLSS 画面。 - 定向验证通过:新增 CPU 单元测试
LoDlssRuntimeStatusTest(37 项检查)、按新 Active 语义更新断言并重新运行的LoDlssCapabilitySnapshotTest(43 项检查全部通过)、底层提交失败注入测试LoVideoSubmissionStopTest(14 项检查)、RTX 5080 真实 Vulkan 无 NGX 生产入口硬件测试(--status-only与--plan-identity覆盖多场景 plan 切换与非空批次不降级),以及生成 18 张 BMP 截图与 notices 的LoMenuFlowTest交互测试。原有 BR-01 CPU/owner 验证结论严格复用,其他既有 GPU 测试套件无重复运行。受影响生产对象增量编译通过。
- 将图形设置菜单行下标重构为共享的
-
诊断日志、F1 状态截图与深度生命周期崩溃修复:
- 设置保存成功日志补齐 upscaler、quality 与 frame_rate 参数。
- 增加结构化 DLSS 运行时日志,基于既有枚举分类输出(Off、AwaitingExecution、Submitted、Fallback、GpuStopped 等),记录可读原因、请求与实际尺寸、render_frame 及身份上下文;语义去重并平抑日志刷新,恢复情况按标准 Submitted 记录,Submitted 严格对应采用与 checked 提交成功而非 GPU 完成。
- F1 状态捕获中的
screenshot.bmp改为呈现前的最终交换链图像(在实际启用 DLSS/黑边/后处理路径时反映相应效果),guest-frontbuffer.bmp保留 resolved host 纹理,每帧成对图片共享同张XE_SWAPticket、帧号与提交序号/fence。无捕获请求时完全不产生读回或内存拷贝。 - 修复 Quality 切换至 DLAA 时因外部 depth 纹理先销毁、已退休 motion stencil 视图后解构导致的非法访问崩溃。将 retired 视图绑定
externalDepth身份,在 GPU 完成后且销毁纹理前解绑深度视图。 - 实现 NGX Evaluate 同次输入输出捕获:在 isolated 录制中,实际参数确认后依次执行 Evaluate 前输入色彩拷贝、vendor Evaluate、成功后 scratch 输出拷贝并恢复 GENERAL 布局,早于复合与 UI 阶段。导出
dlss-evaluations.json、dlss-input-NNN.bin/-preview.bmp、dlss-output-NNN.bin/-preview.bmp(真实 RGBA8/RGBA16F 格式,包含抖动、重置标志与执行身份),未 Evaluate 帧明确记录回退原因而不伪造图片。 - 定向验证通过:新增 CPU 测试
LoDlssStatusLogTest(400 项 logger 检查)、呈现捕获测试LoPresentCaptureTest(D3D12/Vulkan 连续 3 帧与提交/fence 错误注入共 4 项硬件用例及--case close收尾用例)、深度退休硬件测试(motion_replay_gpu_test.exe --depth-retirement-only,RTX 5080 Vulkan D32S8 通过 26 项检查),以及 Evaluate 捕获套件LoDlssEvaluateCaptureContractTest.exe --evaluate-capture-contract-only与LoNativeDlssRendererTest.exe --evaluate-capture-only(motion_renderer_compile编译通过)。完整程序目标LostOdysseyRecomp成功完成最新本地构建与链接(产物build/LostOdysseyRecomp/LostOdysseyRecomp.exe,93,635,072 字节,SHA-25608d50e3774d18a02d4f6eaf2267472e9fab75db36e3ee970980aa96faf641e9d,UTC 2026-09-23 02:32:58 / 当地 2026-09-22 20:32:58 -0600,基于0625923叠加未提交改动,源码标识bdd9539ee4f176bdda0d9660bb5621b8a90a09acf8f8faa8427c10f2075c2688;旧 16:24:35 与 19:33:37 产物历史保留)。实机画质验证、玩家验收及公开发布仍待进行。
-
便携式着色器包合并工具与候选整合(
LoShaderPackTool):LoShaderPackTool新增merge子命令(LoShaderPackTool merge <baseline> <decrypted-image> <manifest.tsv> <output-dir>),支持制表符分隔的清单解析(action\tstage\thash\tsource\tprovenance)、细粒度include/exclude动作、新增微码的翻译与 DXC 编译,以及通过Writer::Import直接导入基线着色器、元数据与省略记录而无需重新编译。- 强制输入与基线包只读保护、独占临时目录组装后原子发布、目标已存在时拒绝覆盖,并要求使用仓库内置 DXC 确保 SPIR-V 代码生成。定向核心测试与 merge 单元测试均已通过。
- 完成本地候选包整合(产物
out/merged-shaders/portable_vk.lospv,178,332,830 字节,SHA-256b486c87d121968bcec67fae6bc1aa7926378455281bc8b2a221409b8c06c6e2b):直接导入 28,482 项基线着色器,编译合入 45 条近期实机缓存微码,总计 28,527 项着色器(0 项跳过,1 项vs_8f6ce5a4f714294a因缺失补充来源记录排除,原缓存保留)。新包通过运行时兼容与载荷校验(all_payloads_verified: true、runtime_compatibility_verified: true)。该产物尚未替换用户实机游戏包、未上传 release 仓库、未进入正式发行包。详见便携式着色器包说明。