Welcome to the Xceed Community | Help
Community Search  
More Search Options

The performance of 3d view is very bad

Sort Posts: Previous Next
  •  11-16-2008, 10:20 PM Post no. 16916

    The performance of 3d view is very bad

    judging from the sample in the demo application(not the xbap), the performance of 3d view is extremely bad. Every time i click next, there is a spike in my cpu usage. i think the animation system could be improved a lot. tested on nvidia gforce 8600 with the default settings.

    for comparison, i tested carausel system from others and the frame rate is very high. to think of it, how can rendering simple quads with simple animation can be so heavy on the processor?

     

    You should hire a graphics programmer, preferebly, a person with experience in real time rendering.

  •  11-16-2008, 11:25 PM Post no. 16919 in reply to 16916

    Re: The performance of 3d view is very bad

    Thanks, but how do you know this is the fault of the graphics programmer? 

    First of all, it could be a graphics card driver issue, I'll talk about that later. However, let's assume it isn't. 

    Don't forget, in order to achieve a stylable, editable control like this, we have to go through the appropriate WPF APIs and layers of abstraction. We aren't just telling DirectX or OpenGL what to draw here. The "carousel" you tested from others, is it WPF? Is it true 3D, or just 2D simulating 3D (2D using skew transforms for example)? Furthermore, is it still stylable / XAML based, allowing you to place within it any WPF control you wish while still remaining 3D and editable? I'm curious which carousel you've tested. There's no shame in mentionning company names if you have to.

    In my experience, competing 2D carousels are *slower* than our 3D carousel... 

    But comparing oranges to oranges, the only other true 3D carousels I've heard of are Pavan Podila's ElementFlow, which is a cool work in progress and I'm not sure how finished it is at the moment, and IdentityMine's 3D carousel which I've yet to examine but they were showing it at the PDC. It will be interesting to compare performance with them.

    That said, with the default Cardflow with reflections on, there's probably plenty of room for improvement. Can't totally blame it on WPF, though sometimes just upgrading your graphics card driver can make a huge difference. It did for us on two machines I know of. It might be that. Otherwise, have you tried some other view settings in the demo? (Like "Card strip", "Train" or "Corner"?). How about when you shut off Reflections? We feel there's room for making the reflections code faster...

    In any case, thanks for the comment, we appreciate all input on what parts of the component you feel need performance work.


    Odi Kosmatos
    VP, R&D, Xceed
    Filed under:
  •  11-17-2008, 1:44 AM Post no. 16921 in reply to 16919

    Re: The performance of 3d view is very bad

    First of all, i dont mean to be rude. i apologise if someone feel offended by my comments. generally, your product is great. its just that the 3d view could be improved.

    i tested Robert Hogue's carousel http://therhogue.com/WinFX/JuneCTP2006/JuneCTPSamplePack.zip. i replace the number images with actual high resolution images. the rendering performance is great. tried full screen and it still work great. although the features are not up to xceed.

    the reason i believe it is the fault of graphics programmer is because, how can rendering few quads with simple animation can be so slow. my graphics driver is recent and i can play 3d games very well. hell i can even run crysis at acceptable frame rate. maybe someone can check what actually being called when next button is being pressed.is the call neccessary? can we perform the computation BEFORE rendering? do we need to call everything during run time? do we need to check the parameters for the selected theme even when we not changing the theme? can we pre compute the surface of each card, stored it in high speed buffer, and during rendering all we need to do is to retrieve the card images.

    another reason i believe this is the fault of graphics programmer is, as a graphics programmer for real time application myself, i would feel that it is my mistake if i let something like this happens. a principle that i hold is that, for real time rendering application, real time speed is all that matters. assume unlimited memory. assume everything fixed or rarely change. assume that i have all the time to do precomputation. assume that it is safe to stored computed information to be reuse.

    although i said that i am a graphics programmer, this doesnt mean i am immune to mistakes. noted that i havent look at the actual source code. at best, this is just my guess. feel free to comment.

  •  11-17-2008, 9:52 AM Post no. 16935 in reply to 16921

    Re: The performance of 3d view is very bad

    Bukan,

    I have nothing further to add to the discussion, really.I thought I answered your question, but your response back doesn't acknowledge that our product does more than just display stuff. (You said "this cannot be so, because, how can rendering a few quads with simple animation can be so slow".)

    Trust me, we can render a few quads pretty fast if we wanted to, but this is not what the product does.

    And either way, I think we both agree, and you said it too, that the speed could be improved (though the default view that I think you are having trouble with is passable on my machine, a sub-$1000 Dell business computer). That's why I suggested you use one of the less demanding views for now. This is the first release of the first commercial 3D control for WPF, you know. Even Microsoft is working hard to on WPF performance at this very moment.

    One final thing: Your assumption that being able to play 3D games and Crysis pretty fast doesn't mean your driver can run WPF well. Some versions of some drivers break WPF performance. It is an independent factor. Upgrading your driver (or sometimes, downgrading!) can make a big difference.


    Odi Kosmatos
    VP, R&D, Xceed
View as RSS news feed in XML
Contact | Site Map | Reviews | Legal Terms of Use | Trademarks | Privacy Statement Copyright 2011 Xceed Software Inc.