LiquidGlass UI 2.4.5 / SDK

2.4.4 场景示例 — 实际验证记录

环境与目标

测试运行:OpenJDK 21.0.11、Linux x64、Mesa 25.0.7-2 / llvmpipe / LLVM 19.1.7。实际窗口使用 Xvfb / OpenGL 3.3 Compatibility;离屏GPU测试使用原来的EGL宿主接入路径和OpenGL 3.3 Core。没有把软件驱动结果当作独立显卡性能测试。

两个发布目标由同一源码分别 --release 8 / --release 21 编译。所有发布 class 检查为52/65,两目标public API一致。真实Java 8 VM没有运行验证;Windows后端也没有Windows实机测试。

本次图形材质、曲线、字体、动画、裁剪与native资源保持2.4.3的原始文件内容。UI核心中仅DesktopWindow的版本日志变更;新增实现位于samples与demo包。资源哈希对比记录在release-check.json,不用“功能看起来相近”替代这个检查。

新增场景验证

SceneExamplesTest 有227项断言,其中67项覆盖业务状态/交互/导航,其余160项是6个场景在4个宽度下的顶层布局边界检查。布局断言不等于已经穷举所有子控件和任意分辨率。

SceneExamplesWindowTest 有38项真实窗口检查:通过Java Robot操作按钮、文本、键盘和拖动,并从实际Ui线程读取状态。覆盖购物袋计算、订单模态、聊天/草稿、模块参数和快照、播放进度、设置应用/撤销、虚拟文件创建/过滤/重命名,以及分类状态保留、材质设置、缩放和滚轮。最后一次运行绘制684帧且未报告GL错误;第一次完整运行710帧也通过,帧数不是性能指标。

七个独立入口对Java8与Java21目标分别真实启动,共14次。每次通过最终library JAR而非源码树加载,正常渲染16帧、GL_NO_ERROR并截图退出。入口是SceneGalleryDemo、FoodDeliveryApp、ChatApp、ClientPanelApp、MusicPlayerApp、PreferencesApp和FileWorkspaceApp。全部20个示例源文件再次直接使用最终JAR编译通过。

此处没有宣称外卖付款、远程聊天、音乐音频、游戏功能或磁盘文件操作经过测试——这些根本没有在场景里实现,均为明确标注的本地UI模拟。

本轮实际重跑的回归脚本

下表的数字是脚本报告的断言数,不是互不重叠的完整用户流程数。本次没有把未执行的旧窗口测试算入当前结果。

脚本检查数结果
tests/run-logic.sh120通过
tests/run-motion.sh25通过
tests/run-neutral.sh37通过
tests/run-stepper.sh46通过
tests/run-quality.sh53通过
tests/run-clip-fix.sh46通过
tests/run-gpu.sh16通过
tests/run-material-gpu.sh3通过
tests/run-neutral-gpu.sh10通过
tests/run-edge-optics.sh20通过
tests/run-edge-settings.sh31通过
tests/run-material-settings.sh75通过
tests/run-scenes.sh227通过
tests/run-scenes-window.sh38通过

包括实际GPU高光/色散像素变化、曲线裁剪、sigma/混合参数和宿主FBO状态恢复。没有为了新增组合示例替换材质默认值、关闭色散或省略blur pass。

一次截图断言重试

首次与独立场景启动测试同时运行时,旧MaterialSettingsWindowTest的网格截图差异断言未通过;模型开关已经为true,但该次截图没有达到断言阈值。没有修改生产代码或放宽该断言,停止并行图形任务后单独重跑同一脚本,41项模型、7项GPU和27项窗口断言全部通过。首次失败和重跑日志都保留;不把它描述为每次都稳定通过,也不据此推断某个平台驱动已经完全兼容。

相关日志:tests/results/2.4.4/material-settings-first-run.log、material-settings.log、status-first-run.tsv、status.tsv。

构建、资源及归档

最终开发包包含两目标library/demo/source/Javadoc JAR、中文HTML/Markdown、68控件目录、20个完整入口/接入示例、完整Java/GLSL/C源码与离线构建脚本。source JAR也包含可复用的samples包。Javadoc从真实源码生成,并过滤JDK工具可能复制的字体文件;不分发任何字体二进制。

release-check.json检查JAR完整性、目标class版本、68控件、samples类、shader/native、两目标API一致、本地文档链接和无字体。最终ZIP另做重新解压、双目标离线构建、JAR关联的示例编译及两目标展示启动复核;命令日志放在同目录的archive-check记录。SHA256SUMS提供各JAR校验值。

未覆盖范围

Windows真机、JVM8实际运行、macOS/ARM、独立显卡性能、全部IME和复杂排版没有在此环境验证。Maven与MSVC路径也没有被离线JDK脚本验证替代。保留原库文档列出的HDR、透明背景、多列级联菜单及可访问性限制。