Am 06.02.2012 18:23, schrieb Luis Carlos Busquets Pérez:
The functin returns D3DERR_INVALIDCALL whenever it is tried on a parameter with elements. A check should be included.
Why do you think this is the case? How did you test this? I think it's not possible to query the ID3DXBaseEffect interface (see http://source.winehq.org/git/wine.git/blob/HEAD:/dlls/d3dx9_36/tests/effect.... ). Beside that, please have a look at http://source.winehq.org/git/wine.git/blob/HEAD:/dlls/d3dx9_36/tests/effect.... , which calls ID3DXBaseEffect::SetValue through ID3DXEffect. There it doesn't return D3DERR_INVALIDCALL for D3DXPC_SCALAR, D3DXPC_VECTOR, D3DXPC_MATRIX_ROWS and Elements > 0. This should be tested by e.g. http://source.winehq.org/git/wine.git/blob/HEAD:/dlls/d3dx9_36/tests/effect.... . Could you please a be a bit more specific, where the D3DERR_INVALIDCALL is returned? Maybe on e.g. D3DXPT_PIXELSHADER, which isn't implemented in wine, yet?
Cheers Rico