while learning Direct 3D 11 API It's seem to me that deferred context with multithreading are mandatory in order improve render perfomance (on systems with actual multithread support that is).
So after reading the documentation (create a deferred context, use it "as" the immediate one, finish it and get the result with a command list and then use the command list with the immediate context) I thought it would be easy to implement without threading involved in my basic framework as a first step.
(here comes the) But it seems that I've done something wrong since nothing is rendered. After more reads I've noticed that states in deferred context are not inherited from the immediate one (ok fine makes sense). However i'm using D3D11 effect framework and I don't know if how do it support deferred context.
I've seen, in the source code, that the framework uses a dirty-tag system to track modifcation and optimize cbuffer/resource/etxc updates. How does it suppose to work with a context that is always clean at the beginning on a render pass (with ClearState or FinishCommandList(TRUE, &pCommandList)) ??
I know that I WILL have to implement a specific shader framework but am I doing something wrong this the provided D3D11 effect framework ?? Did I misunderstood some point ??
Thank for any hint
haust.

Find content
Not Telling