|
I have WPF application that performs scrolling of three xaml controls in circular manner.
If I use simple control without much styles or instead use a simple image in the element, then scrolling goes fine and application performance is good.
However, if I load the control with heavy WPF styles,then at very high resolution say (1400 * 900) systems, scrolling gets jerky and CPU usage increases.The problem exists with machines with low graphic card.
I studied this and found that WPF can take advantage of hardware rendering pipeline but couldn't find any working example.
Is there some way in WPF by which we can use heavy styled xaml controls with good performance on PCs with UMA graphic card?
|
|
|
|
|
Why do you think you are going to get an answer to the one I gave below? Didn't you believe me? Did you somehow think that I was pulling this information out of my a*se just to yank your chain?
You've been told the solution. Now actually get off your a*se and do something about it.
|
|
|
|
|
Pete's right ...
WPF unlike winforms uses the graphics engine of the machine to 'paint' screens. This is all done throuh the MILCORE and DirectX ...
"The major components of WPF are illustrated in the figure below. The red sections of the diagram (PresentationFramework, PresentationCore, and milcore) are the major code portions of WPF. Of these, only one is an unmanaged component – milcore. Milcore is written in unmanaged code in order to enable tight integration with DirectX. All display in WPF is done through the DirectX engine, allowing for efficient hardware and software rendering. WPF also required fine control over memory and execution. The composition engine in milcore is extremely performance sensitive, and required giving up many advantages of the CLR to gain performance."
Get a better machine ...
To be fair WPF is arguably very 'Vista' related meaning that you should really say to users that minimum specs of machine are more ot less what you would expect in order to run Vista.
That is certainly what we are going to be doing when we roll out our new software ...
Jammer
Going where everyone here has gone before!
My Blog
|
|
|
|
|
Thanks for the reply.
I have already lowered the Bitmap effect and applied the caching still in need more performance, can you suggest something ?
Can i somehow further reduce the rendering quality while doing doing some particular task?
Thanks
|
|
|
|
|
Since WFP is practically DirectX it might be worth investigating down this route ...
Maybe experiment with you images as well. I can't imagine a scenario where I would want to degrade quality though so i've never looked into this.
Jammer
Going where everyone here has gone before!
My Blog
|
|
|
|
|
Hi All,
This is a way off yet but its something I have to think about.
My current project has a large enough potential Mac user base to make a mac version a viable effort. Have any of you here undertaken such a task? I'm not even sure what languages you can use to program for a Mac. I know that its a Unix based system which is significantly different platform and would require a stack of effort to learn but it would be worth it.
I need to have a read up but has anyone got any useful info on this topic?
Cheers,
Jammer
Going where everyone here has gone before!
My Blog
|
|
|
|
|
Presumably you're prepared to junk the WPF UI right? OTOH could your app. all be done in Silverlight 2.0?
Kevin
|
|
|
|
|
Oh yeah, I'm coming from the angle that it would be a rewrite from the ground up basically ... a few resources could be carried over like XML lookup tables but that's about it I would imagine.
haha!! - from appleinsider ...
"C# is the microsoft spawn of satan java hack that is windows only. "
This looks interesting ...
http://www.mono-project.com/Mono:OSX[^]
Jammer
Going where everyone here has gone before!
My Blog
|
|
|
|
|
Yes, I was going to mention Mono but wasn't sure whether you wanted to stay with WPF or not. It will probably be easier to use Mono than learn Java or Objective C.
Kevin
|
|
|
|
|
indeedy!
Jammer
Going where everyone here has gone before!
My Blog
|
|
|
|
|
"You take your stinkin' Mac ways away from these forums. We don' wan' no stinkin' Mac users."
|
|
|
|
|
heh heh ... nix ... pah!
Jammer
Going where everyone here has gone before!
My Blog
|
|
|
|
|
Jammer wrote: heh heh ... nix ... pah!
And now you're bringing up nix? Dear god. Will the horror never end?
|
|
|
|
|
not in my lifetime!
Jammer
Going where everyone here has gone before!
My Blog
|
|
|
|
|
You may want to look at this[^] book.
The Mono .NET port is interesting, but seems to be a bit backend forwards about the different versions it develops with the development team rushing onto new features as soon as MS releases them without necessarily sorting out the issues with the existing versions.
|
|
|
|
|
Hi there,
I am working on a project where the situation is the other way round. My background is a boxed software product which is available for both Mac and Windows.
After we did a port originally (using GNUStep) we ended up rewriting the application from scratch using Windows native tools (C# and WPF).
The reasons:
- Windows and Mac users expect a very different user experience which requires two different user interfaces.
- Both platforms have different strengths and what is easy on one platform can be very hard on the other. We try to keep our two products feature-identical but the implementation and usage of the features can greatly differ.
- ObjectiveC is a dynamic language, C# is a statical typed language. The way you program in these languages is very different.
- If you want a great product you need great developers. A Windows developer is likely not the best choice to create a 'good' Mac application and vice versa.
Tools that work on both platforms have not the power of the native tools. (eg. Mono)
As an example I want to refer to Microsoft Office. Office on Windows and Office on Mac has a VERY different user interface. I think Microsoft made the right choice by understanding that users on Mac and Windows have different expectations.
|
|
|
|
|
Very interesting post Pakl ...
Just out of interest what boxed product is this background of your?
Jammer
Going where everyone here has gone before!
My Blog
|
|
|
|
|
|
Nice ... I'm going to check that out tomorrow ... looks like a cracking bit of software!
Jammer
Going where everyone here has gone before!
My Blog
|
|
|
|
|
getting better and better... we are still on our way from GDI+ to WPF. quite an interesting journey
|
|
|
|
|
I should say! There must be a lot of un-needed code to get GDI+ to do some of the WPF 'native' things.
Jammer
Going where everyone here has gone before!
My Blog
|
|
|
|
|
... How much more fun is working with WPF than Windows Forms?
a) A bit
b) Don't care
c) What's WPF?
d) Like night and day better
e) I hate programming.
f) HELL YEAH!!
g) What's windows forms?
h) I like cheese
Jammer
Going where everyone here has gone before!
My Blog
|
|
|
|
|
i. I ain't never going back. Wild horses can't drag me back to WinForms.
|
|
|
|
|
h : I like cheese
pretty fond of WPF too..
Paul
|
|
|
|
|
yeah, fondue ... har har ...
Jammer
Going where everyone here has gone before!
My Blog
|
|
|
|