Jump to content

  • Log In with Google      Sign In   
  • Create Account


#ActualChris_J_H

Posted 13 December 2012 - 08:32 AM

Thanks Guys - what you say makes absolute sense to me. However - calling Preload() on the mesh buffers upon mesh creation (and OnRestore() for good measure) seems to make no difference - I understand that under some circumstance the GPU can ignore the Preload() command?... Also, there are no textures with the mesh - just geometry. My next step is to refactor my Mesh Class so that it manages the buffers itself... Will post progress. Also, the idea of doing a dummy initial render of all the objects to ensure they are fully loaded may be the way to go...

Update: It actually seems to be the ID3DXEffect resource causing the stall (the effect is unique to the mesh). If I render a dummy mesh initially using an identical effect (but duplicated), I still get the stall - but if I render the dummy mesh using the same effect resource I do not get the stall when my real mesh in the game first becomes visible. There doesn't seem to be a PreLoad() equivalent for ID3DXEffect... perhaps the only easy answer is to render all initially in some dummy frames (as suggested).

#2Chris_J_H

Posted 13 December 2012 - 08:32 AM

Thanks Guys - what you say makes absolute sense to me. However - calling Preload() on the mesh buffers upon mesh creation (and OnRestore() for good measure) seems to make no difference - I understand that under some circumstance the GPU can ignore the Preload() command?... Also, there are no textures with the mesh - just geometry. My next step is to refactor my Mesh Class so that it manages the buffers itself... Will post progress. Also, the idea of doing a dummy initial render of all the objects to ensure they are fully loaded may be the way to go...

Update: It actually seems to be the ID3DXEffect resource causing the stall (the effect is unique to the mesh). If I render a dummy mesh initially using an identical effect (but duplicated), I still get the stall - but if I render the dummy mesh using the same effect resource I do not get the stall when my real mesh in the game first becomes visible. There doesn't seem to be a PreLoad() equivalent for ID3DXEffect... perhaps the only easy answer is to render all initially in some dummy frames (as suggested).

#1Chris_J_H

Posted 12 December 2012 - 07:10 AM

Thanks Guys - what you say makes absolute sense to me. However - calling Preload() on the mesh buffers upon mesh creation (and OnRestore() for good measure) seems to make no difference - I understand that under some circumstance the GPU can ignore the Preload() command?... Also, there are no textures with the mesh - just geometry. My next step is to refactor my Mesh Class so that it manages the buffers itself... Will post progress. Also, the idea of doing a dummy initial render of all the objects to ensure they are fully loaded may be the way to go...

PARTNERS