Desktop Vignette

Just like the BMP Splitter, this is a quick little project thrown together based off a thread on the Penny Arcade forums, I love gradients and translucency of OS X, but first of all, I use Windows, and I find their translucency to be mostly useless. Don't get me wrong, it's very aesthetically pleasing, but it doesn't really add much to the user experience.

I originally got the idea of putting a vignette over a user interface from The Incredibles. When Mr. Incredible gets to Syndrome's computer, the interface is being projected onto a movie screen. Because of the simulated lens refraction, the image is brighter in the center of the screen than it is at the edges. It ended up taking a simplistic flat-color interface and making it very pleasing to look at.

But to make the program useful, I figured I could find a way to apply the vignette to everything except the widndow you're trying to use. Of course, that sounds easy, except that I'd never done anything quite like this before.

So, after a few hours of combing through MSDN, I got exactly what I was working on working perfectly. Except that I failed to take into account programs that have more than one window (like photoshop or dreamweaver).

But now, it's working correctly. My program draws a vignette over your display, except for the windows that belong to the application you're using. So if you were IMing somebody, then every AIM window will appear normally, and every thing else will be vignetted.

Screenshots

Download & Instructions

Your mileage will vary. On my computer, it takes about 50-60% of my processor. On my work computer, it takes about 3%. The difference is that my video card at home is incapable of accelerating blending for layered windows, so the GDI is doing all the blending in software. If you can run a modern game at all (i.e. Doom3, WoW, HL2), then your layered window blending will almost certainly be handled in hardware.

The program has to store 2 full-screen 32-bit buffers to pull off the blending. So expect it to take between 10 MB and 20 MB of memory while running depending on your desktop resolution.

There is no installer for this. Just unzip to a folder somewhere and run it. If you want it to run at startup, add it to the "startup" folder in your Start Menu. You could also add it to /HKEY_CURRENT_USER/Software/Microsoft/Windows/Current Version/Run/ in your Windows registry (though the Start Menu method is easier).

Download your copy here. Remember that you can change the vignette color and opacity by editing "vignette.conf" in notepad.

Have fun... I hope this program works out well for you.