Repository navigation
Roadmap and Known Issues
Deepratna Awale edited this page Oct 6, 2026
·
6 revisions
A summary of the plan and the open items across the design documents. The order of work: finish what is most implemented first, then what is partly implemented, then what isn't; within each area, smaller items first.
- Audio capture lifecycle, translator regressions, stable signing, no permission prompt spam.
- Guidelines, reorganisation, tests and CI.
- Effects and shaders through WE's own shaders, with the in-process compiler (run in a helper copy of the app, so a crash or hang can't take the app down) and the pipeline binary archive; bounded pipeline compiles.
- Composition, fullscreen and solid layers;
_rt_FullFrameBuffer; effects on text; object draw order. - User properties on every field, per-wallpaper stores, sidebar conditions, web properties and audio.
- Parent transforms, image alignment, WE's text layout and colour; Retina scene targets.
-
SceneScript (WP0–WP11 and their gaps): one runtime per instance, sound layers,
createLayer, JIT. - Timelines (T0–T7): WE's format and maths bit for bit, the script API, sprite sheets.
- Particles: children, instance overrides, audio response, collision, WE's defaults, GPU stage batching, the particle budget.
- Lighting (roadmap area 5): lights, lit images, bloom, HDR and display HDR, volumetrics, reflections, shadows (lit particles included); the scene's clear, ambient and skylight colours.
-
3D models and puppets (roadmap areas 6 and 7):
.mdl, perspective cameras, depth, skinning, morph targets, root motion, animation layers and the script bone API, bone physics, attachments, planar reflection, particlecollisionmodel. - One instance per wallpaper across displays; per-display pause; the maximized-window rule.
- Resolution settings: Texture Resolution, Render Resolution, Scene Detail.
- WebM video through WebKit; WE's assets from the user's Steam copy, SteamCMD installed by the app, 15 translations, Liquid Glass.
- WE-authored values everywhere: audit and fix remaining invented constants.
- Shaders: base image materials fully through WE's shaders for every layer; geometry-shader emulation coverage.
-
Particles through WE's
genericparticlematerials everywhere (blend modes, sprite/trail options, refraction); simulating in the system's units under a scaled object. - Music-sync settings keyed by stable identity, not the path.
- Text with effects, blend modes or emoji through WE's font path.
- A performance pass (frame time, load time, memory) after each area.
| Issue | Area |
|---|---|
| A property change on a particle system rebuilds the content, restarting the particles | Particles |
| Particle velocities/gravity aren't scaled by the object's scale (WE simulates in the system's units) | Particles |
| Boids and an instanced rope's neighbour search are O(n²) | Particles |
| Layers without effects have no mipmap level (minification aliases); Desktop resolution could use a sharper upscale | Rendering |
| A particle rate bound to a script can cost 0.5–4 ms a frame | SceneScript |
Where WE fills g_PointerState's other components is unknown |
Built-ins |
| The library's Source filter isn't matched against wallpapers yet | UI |
application wallpapers |
Out of scope |
Blocked on WE ground truth: see "needs WE ground truth" in docs/test-risks.md.
User guide: Troubleshooting
Open Wallpaper Engine · GPL-3.0 · Released by Deepratna Awale · Based on Open Wallpaper Engine by Haren Chen and MrWindDog · Not affiliated with Wallpaper Engine or Valve · Home · User Guide · Developer Guide