My second patch was not committed, because Alexandre wants all the functions to be implemented in d3dx9-36.dll. Then, the other d3dx9_xx dll forward their functions to d3dx9_36.dll. David