The last couple posts in this series have dug into features and example usage of Effects in WPF. Let’s go into some other aspects of the feature that are important to understand. Software Rendering When we discuss Effects, we typically talk about them being GPU-accelerated. This is typically the case. However, there are three important situations where the Effects cannot be GPU-accelerated: When the graphics card being run on does not support PixelShader 2.0 or above. This is becoming more and more rare, but is definitely still out there. When the WPF application is being remoted over Remote Desktop or Terminal Server or some other kind of mirror driver. When the WPF application is in a mode where software rendering is required – such as rendering to a RenderTargetBitmap, or printing. In all of these cases, WPF will render Effects via software. What does that mean? As mentioned in an earlier post, Effects are written using HLSL for programming the GPU. WPF incorporates a “ JIT ter” (Just-in-Time
Read More...