开发者

Can you make animations multithreaded? How to improve animation performance

I'm using the FluidKit Cube Animation in my WPF application.

The animation is smooth when the application window is not in full-scree开发者_运维知识库n, but when the application is running in full screen (maximised - borderless window with no controls), the animation is not smooth.

I noticed the WPF application is hammering a single thread and only utilising one of the four cores of the CPU, memory utilisatio is low.

I'm wondering if there is any way of making the window multithreaded or just the animations multithreaded so the application can utilise more of the available hardware?

Are there any other ways to improve animations?

Ben


I will be really excited if someone tells me a UI thread in WPF can leverage multi core CPUs....

Jokes apart, GPU and CPU are different concepts sadly. Will it be controversial if I say "The hardware acceleration mode for WPF apps utilizes GPU's own hyper threading model instead of multi core CPUs."?

Although there are ways to improve animations such as animating Adorners using PresentationSource, Transforming Drawings and Geometries than Shapes, CompositionTarget.Rendering event, BeginStoryBoard.HandoffBehavior="Compose" etc. You will find all of these discussed in details over the internet.

Interestingly there is an old (very useful post) about multi core systems and their impact on parallel .Net frameworks such as PLINQ and WPF 3.0 etc. http://social.msdn.microsoft.com/forums/en-US/wpf/thread/07562a10-17bd-44d3-975b-99ed02bd05de/

I hope this kicks off some very interesting brain storming from our very able StackOverflow experts....

Expectantly Waiting ... :-)


Try to avoid any effects and see how it works and totally avoid bitmap effects, because they force WPF to use software rendering which is not really good.

Suggest you to check out Performance Profiling Tools from Windows SDK. Good luck ;)

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜