![]() In any case, I may not be right, and I'm no graphics programming expert, but the evidence for their claim of performance issues with Aero Glass is just not there. ![]() I just wanted to have a proof of concept and some feedback before continuing (one of the biggest rules of programming is, premature optimization is the root of all evil ). My relatively high DWM memory usage is due to the fact that I'm using debug versions of my software (that already adds significant overhead) and I'm not doing any kind of cleanup/memory leak checks yet. And in the case of my program, the blurry surfaces are being cached and not re-generated unless you resize/move/open/close a window, so most of the time it's not doing anything extra. Looking at DWM internals you can clearly see they are using premultiplied BGRA pixel formats at least on non-client areas, so even if alpha information is not being used in some places, it's still being allocated. And I would dare to say that most Windows 8.1+ installs have some sort of hardware accelerated graphics device available. In any case, this feature can be disabled either by user request or on the fly if the device is running on battery or software rendering mode. I don't think these devices would have a performance hit when running a blur pixel shader. To put things into perspective, the 5200 gets a 7 in the Passmark GPU benchmark while the Atom Z3735G SoC included in a popular low end Windows tablet, the HP Stream 7, gets 105. I myself have had Aero Glass running smoothly on a Geforce 5200 or the measly GMA adapter on a 2009 Asus Eee PC netbook. Windows 7 has shown that Aero Glass runs wonderfully on extremely low-end graphics hardware. But it really exists for extreme user cases (and possibly server configurations) since (unless using a powerful CPU) it is much slower than even the most basic graphics cards. As for the software rendering mode, it only exists so that DWM can be enabled at all times, for example when your regular video card driver gets disabled. By limiting the amount of a surface can be transparent, you get performance benefits on the GPU side because it doesn't have to sample multiple textures to render a pixel (And that's just simple translucent surfaces, like window shadows, Glass did blurring/tinting for every single surface behind it)Īnd of course it reduces memory consumption, you can use RGB surfaces instead of ARGB surfaces for your window backing store by default.Īll my DWM tinkering has been done on Windows 10 so maybe certain things have changed from Windows 8/8.1. The DWM just uses software rendering mode if the GPU sucks (And you really don't want to do Glass in that situation)Īnd even with full hardware acceleration, overdraw is slower than non-overdraw. ![]() Well, yes and no, Glass requires the DWM, and the DWM is always used as of 8+, but that doesn't mean you always have hardware acceleration. They originally didn't want people to spend time on the Desktop UI but on the ridiculously fullscreen (thank god we got rid of that) Modern UI apps. As for the blur or frosty glass effect, it uses an extremely simple pixel shader (I mean, blurring a bunch of pixels? It really means absolutely nothing for a modern graphics processor, even a mobile one) rendered on a polygon behind the window which again, is not a lot more performance heavy than say, the 3D shadow effect around a window. In any case, how hard could have been to add a toggle, or even separate themes for the glass effect? Answer: not hard at all. The second reason is that the glass effect incurs no performance hit since the way DWM is designed windows are overlaid on top of each other and if you basically don't draw anything in a window everything behind it will be shown (I'm talking about non-client window areas). ![]() So even if there was a battery life issue when using desktop composition (required for Glass) it wasn't the reason it got removed because composition is everywhere (even more so in Windows 10). Graphics hardware are better and more efficient at, yes, graphics rendering than CPUs. This means that the graphics hardware is being used continuously, which is a good thing. Composition, specifically the DWM, which renders every window as a 3D polygon cannot be disabled starting with Windows 8. And that is completely not true for two reasons: First, with Windows 8 hardware-accelerated graphics are used system-wide. When Microsoft shipped Windows 8 back in 2012 they have repeatedly said they have removed Aero Glass because of performance/battery life issues.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |