POLARISUI / C++ / 0.1.0

禁止商用。所有使用 PolarisUI 的应用必须公开完整源码。许可全文

Windows x64 / C++17 / OpenGL 3.3+ · 不依赖 Java/JNI · 版本与校验值

C++ 0.1.0 测试记录

日期:2026-10-05。环境:Windows 11 专业版 10.0.26200,NVIDIA GeForce RTX 2060/PCIe/SSE2,LLVM-MinGW 20260922-ucrt / Clang 23.1.2,CMake 4.4.4。

证据、结论与路径

证据结论复现路径
37 项 core 断言通过控件捕获、禁用、UTF-8 编辑、焦点、选择与范围检查有效tests/core_test.cpp / polaris_core_test.exe
30 项 GPU 断言通过真实 GL 输出、系统字体、形状裁剪、宿主状态与 FBO 集成有效tests/gpu_test.cpp / polaris_gpu_test.exe
独立 Window 运行 3 帧退出原生窗口事件/渲染/swap 生命周期可运行polaris_showcase.exe --smoke
4 张 1920×1200 PNG配置、控件、浅色音乐和折射图不是设计示意图renders/、examples/showcase.cpp --render
零 tint/blur/sigma 对照有 24,381 个像素不同只切换 refraction 0/30,玻璃边缘采样确实变化renders/render-report.json
CTest 3/3 passedCMake 构建后的测试可独立运行ctest --test-dir build/local --output-on-failure

GPU 测试在同一窗口内销毁和重新创建 Renderer 两次,包含重复 Renderer 拒绝、跨线程调用拒绝、红色像素实测、中文/emoji 字体输出、贝塞尔形状裁剪、viewport/scissor/depth/blend/color-mask 恢复、读取截图时 PACK_ROW_LENGTH 和 SKIP 状态恢复、调用方单采样 FBO 渲染及不平衡 clip 拒绝。

复现

用 README 的 CMake 或 PowerShell 命令编译后:

./build/llvm-mingw-x64/polaris_core_test.exe
./build/llvm-mingw-x64/polaris_gpu_test.exe
./build/llvm-mingw-x64/polaris_showcase.exe --smoke
./build/llvm-mingw-x64/polaris_showcase.exe --render renders

渲染程序只创建本应用的屏幕外窗口,读取自己的 GPU framebuffer,不注入真实鼠标键盘、不截桌面。PNG 使用 Windows 系统 WIC 编码。

未覆盖

没有验证 MSVC、AMD/Intel GPU、远程桌面、Windows 10、Linux、macOS、多屏 DPI 切换和真实用户的长时间输入。Core 的输入测试注入的是本 SDK Input 数据,不等同于完整的系统 IME、辅助功能或端到端可用性认证。

未完整移植 Java 的 68 类控件,也不宣称 Java/C++ 文字逐像素一致。SDK 采用自定义非商业/完整应用源码公开许可;本测试不替代法律或权属审查。