Кто-нибудь знает, как себя ведет Direct3D 9.0 при выполнении его кода одновременно на нескольких потоках и можно ли производить рендеринг нескольких объектов параллельно?
скажу сразу - я не знаю. но можно взять любой рабочий пример keYMax'а, добавить в примере еще один поток и запустить
Есть флаг: D3DCREATE_MULTITHREADED для IDirect3D9::CreateDevice() (Indicates that the application requests Direct3D to be multithread safe. This makes a Direct3D thread take ownership of its global critical section more frequently, which can degrade performance.) Хотя у меня и без флага нормально работает, но я использую CriticalSection при локе и рендеринге.