• Advertisement
Sign in to follow this  

"Direct3D9: (ERROR) :All POOL_MANAGED resources in this device freed." ???

This topic is 4148 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello, this is a new one to me, it occurs when I try to draw the subset of a mesh, which appears to have leaded correctly.... ( it used to work! ) Direct3D9: (ERROR) :All POOL_MANAGED resources in this device freed. No further video memory available. Not sure how the resources were freed... anyone any ideas? Thanks Si

Share this post


Link to post
Share on other sites
Advertisement
You might be running out of VRAM. With Managed Pool resources, whenever a new Deafult Pool resource is created, they get shoved out of VRAM (if theres no vacant space). When you want to draw them, they need to be pushed back into VRAM to be drawn, but they can't push out a Default Pool resource. If you get to a situation where there isn't enough free + Managed Pool allocated memory for a buffer you're trying to draw, I'd assume it would fail.
I'm not certain this is the issue here (first I've seen this error), but that sounds like a possibility [wink].

Hope this helps [smile].

Share this post


Link to post
Share on other sites
What sirob said. Or:

Do you create any D3DPOOL_DEFAULT resources yourself? If so, are any of them created after you create D3DPOOL_MANAGED resources?

If you are creating some D3DPOOL_DEFAULT things after you've created D3DPOOL_MANAGED, either reorganise the creation so that all the D3DPOOL_DEFAULT things are created before the D3DPOOL_MANAGED things or call IDirect3DDevice9::EvictManagedResources() just before you create the D3DPOOL_DEFAULT resources.

BTW: Chuck Walbourn's "Resource Management Best Practices" white paper in the SDK documentation is well worth a read.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement