Asynchronous resource allocation in directx is not done with shared resources between devices ( a bad idea! ), but by creating the device with the D3DCREATE_MULTITHREADED flag, allowing for threadsafe api calls. The downside in d3d9 is that the critical section is global over all api calls. D3d11 is the first api to separate resource allocation and render calls.
Multithreading the engine
in C++
Posted · Edited by Haladrin
Asynchronous resource allocation in directx is not done with shared resources between devices ( a bad idea! ), but by creating the device with the D3DCREATE_MULTITHREADED flag, allowing for threadsafe api calls. The downside in d3d9 is that the critical section is global over all api calls. D3d11 is the first api to separate resource allocation and render calls.