Sign in to follow this  
Lifepower

Pure Device

Recommended Posts

Sorry is this has been answered before, but after testing the performance in Direct3D using pure device (created with DCREATE_PUREDEVICE flag) and without it - I'm getting exactly the same performance (just some things don't work with pure device). I've read DX SDK carefully and it says pure device can increase the performance. I *do* filter state changes but even if I don't, it still pretty much the same (I'm drawing a 3D model with about 40,000 vertices using hardware vertex processing - the states I set are for textures, camera, etc. I do set them only once per frame though). Is there anything I should do to take the advantage of pure device or am I missing something? Hope someone can give me a hint on this as I'm out of ideas... :( Thanks in advance!!

Share this post


Link to post
Share on other sites
You aren't seeing any type of difference because you aren't changing any states. The whole point of a pure device is that it doesn't keep track of any of the state data (hence no Get() functions) - it leaves that up to you. If you were making a lot of valid state changes, that is were you may see a slight performance difference. Even then, its not going to be that big, as pure devices don't really help out that much.

Non-pure devices are going to be just a bit slower if you are making lots of state changes, due to the added overhead of keeping track of all of these changes. Of course, if your application takes care of state management on its own, then there is going to be overhead there, too. But in that case, at least you can switch to a pure device and minimize the D3D-size overhead.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this