Rearchitecting the d3dx DLLs