feat(wallpaper): support shader wallpaper sources#1097
Conversation
Add shader as a wallpaper source type and wire it through the wallpaper manager, notifier, persisted config, and wallpaper factory. Shader wallpapers are loaded from precompiled qsb packages and driven by a frame-synchronized clock so animation time follows actual rendered frames. Extend the test wallpaper client to import .frag files by compiling them with qsb, caching shared shader packages under /tmp, and falling back to /usr/lib/qt6/bin/qsb when qsb is not in PATH. Add qt6-shader-baker as the examples runtime dependency. Log: 支持导入并渲染 shader 动态壁纸
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: mhduiy The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
shaderBakeSource 还需修改 |
目标不要定义太复杂了,如果需要这么高级的定义能力,其实应该自己实现一个wallpaper程序代替默认的。 |
嗯嗯,设想是做成一个类似于 Wallpaper Engine 的东西,但是确实一时半会实现不了。规范输入是有必要的,给设计壁纸的人提供通用接口。当前实现 shader 壁纸、自定义静态壁纸输入并且建立输入规范后重新打开此PR。 |
Add shader as a wallpaper source type and wire it through the wallpaper manager, notifier, persisted config, and wallpaper factory. Shader wallpapers are loaded from precompiled qsb packages and driven by a frame-synchronized clock so animation time follows actual rendered frames.
Extend the test wallpaper client to import .frag files by compiling them with qsb, caching shared shader packages under /tmp, and falling back to /usr/lib/qt6/bin/qsb when qsb is not in PATH. Add qt6-shader-baker as the examples runtime dependency.
Log: 支持导入并渲染 shader 动态壁纸
从长远来看,目前实现还有以下问题
长远设想,或者是下一步打算