Revision 857241
Go back to digest for 7th September 2008Features in KDE Base
New plasma wallpaper plugin: Mandelbrot fractal viewer.
Like your usual fractal wallpaper except it's live ;)
Important: this is a minimalistic implementation, only 360 lines of code, leveraging Plasma, Qt, Eigen. Not intended to compare to Fraqtive which is much more serious.
Still has nice features:
- uses as many cpu cores as you have
- non-blocking rendering, in separate thread(s)
- uses vectorization instructions (sse, altivec) if available
- switches automatically between single and double precision as needed
- tiled rendering, prioritizing tiles near the mouse event, so the user can browse very fast as the tiles he's most interested in are rendered first.
- no-frills monochrome gradient directly from divergence data:
let's not corrupt natural beauty with kitsch gradients.
caveats:
- SSE2 required for now (but fixing that is just a matter of adding platform-detection logic).
- doesn't save/restore the view
- triggers a number of plasma bugs.
Most importantly: for now, use it in the Dashboard view, otherwise there are repainting glitches.
File Changes
- /trunk/playground/base/plasma/wallpapers
- /CMakeLists.txt
- /mandelbrot
- /mandelbrot/CMakeLists.txt
- /mandelbrot/config.ui
- /mandelbrot/mandelbrot.cpp
- /mandelbrot/mandelbrot.h
- /mandelbrot/Messages.sh
- /mandelbrot/plasma-wallpaper-mandelbrot.desktop
- /mandelbrot/render.h
- /mandelbrot/render_impl.cpp
- /mandelbrot/render_impl.h
- /mandelbrot/render_with_vectorization.cpp
- /mandelbrot/render_without_vectorization.cpp
- /trunk/playground/base/plasma/CMakeLists.txt