public void ResetStates ()
{
lock (this.DeviceContext) {
deviceContext.ClearState();
SetTargets( null );
SetupVertexInput( null, null );
SetupVertexOutput( null, 0 );
PixelShaderResources .Clear();
VertexShaderResources .Clear();
GeometryShaderResources .Clear();
ComputeShaderResources .Clear();
DomainShaderResources .Clear();
HullShaderResources .Clear();
PixelShaderSamplers .Clear();
VertexShaderSamplers .Clear();
GeometryShaderSamplers .Clear();
ComputeShaderSamplers .Clear();
DomainShaderSamplers .Clear();
HullShaderSamplers .Clear();
PixelShaderConstants .Clear();
VertexShaderConstants .Clear();
GeometryShaderConstants .Clear();
ComputeShaderConstants .Clear();
DomainShaderConstants .Clear();
HullShaderConstants .Clear();
PipelineState = null;
}
}