I wanted to know if I can lock a resource such as a vertex buffer or a texture surface in the device memory, copy data to it asynchronously while I render a scene (without using the resources I am currently copying to obviously). When the backbuffer is presented, and the asynchronous transfer is finished and the resources are unlocked I want to draw a new scene, using the newly updated resources.
Much of my framerate is consumed in just updating instance buffers and huge textures containing skeletons. So I figured that instead of waiting I can draw the scene using twin resources.
I render from one twin while I copy to the other twin. And switch for the next frame. Is this supported in DX9 / SM3.0 and is it a good idea?
Edited by Tispe, 15 January 2014 - 06:59 AM.