Module: wine Branch: master Commit: 7c40f9aaa242607596ad67254479c3dc7045639f URL: http://source.winehq.org/git/wine.git/?a=commit;h=7c40f9aaa242607596ad672544...
Author: Stefan Dösinger stefan@codeweavers.com Date: Thu Feb 15 13:48:23 2007 +0100
ddraw: Forward D3DRS_TEXTUREADDRESS* and D3DTSS_ADDRESS* to sampler states.
---
dlls/ddraw/device.c | 99 +++++++++++++++++++++++++++------------------------ 1 files changed, 52 insertions(+), 47 deletions(-)
diff --git a/dlls/ddraw/device.c b/dlls/ddraw/device.c index 12455fd..c1ff5cd 100644 --- a/dlls/ddraw/device.c +++ b/dlls/ddraw/device.c @@ -2195,28 +2195,15 @@ IDirect3DDeviceImpl_7_GetRenderState(IDirect3DDevice7 *iface, return hr; }
+ case D3DRENDERSTATE_TEXTUREADDRESS: case D3DRENDERSTATE_TEXTUREADDRESSU: + return IWineD3DDevice_GetSamplerState(This->wineD3DDevice, + 0, WINED3DSAMP_ADDRESSU, + Value); case D3DRENDERSTATE_TEXTUREADDRESSV: - case D3DRENDERSTATE_TEXTUREADDRESS: - { - WINED3DTEXTURESTAGESTATETYPE TexStageStateType; - - if (RenderStateType == D3DRENDERSTATE_TEXTUREADDRESS) - { - TexStageStateType = WINED3DTSS_ADDRESS; - } - else if (RenderStateType == D3DRENDERSTATE_TEXTUREADDRESSU) - { - TexStageStateType = WINED3DTSS_ADDRESSU; - } - else - { - TexStageStateType = WINED3DTSS_ADDRESSV; - } - return IWineD3DDevice_GetTextureStageState(This->wineD3DDevice, - 0, TexStageStateType, - Value); - } + return IWineD3DDevice_GetSamplerState(This->wineD3DDevice, + 0, WINED3DSAMP_ADDRESSV, + Value);
default: /* FIXME: Unhandled: D3DRENDERSTATE_STIPPLEPATTERN00 - 31 */ @@ -2348,29 +2335,19 @@ IDirect3DDeviceImpl_7_SetRenderState(IDirect3DDevice7 *iface, tex_min); }
+ case D3DRENDERSTATE_TEXTUREADDRESS: + IWineD3DDevice_SetSamplerState(This->wineD3DDevice, + 0, WINED3DSAMP_ADDRESSV, + Value); + /* Drop through */ case D3DRENDERSTATE_TEXTUREADDRESSU: + return IWineD3DDevice_SetSamplerState(This->wineD3DDevice, + 0, WINED3DSAMP_ADDRESSU, + Value); case D3DRENDERSTATE_TEXTUREADDRESSV: - case D3DRENDERSTATE_TEXTUREADDRESS: - { - WINED3DTEXTURESTAGESTATETYPE TexStageStateType; - - if (RenderStateType == D3DRENDERSTATE_TEXTUREADDRESS) - { - TexStageStateType = WINED3DTSS_ADDRESS; - } - else if (RenderStateType == D3DRENDERSTATE_TEXTUREADDRESSU) - { - TexStageStateType = WINED3DTSS_ADDRESSU; - } - else - { - TexStageStateType = WINED3DTSS_ADDRESSV; - } - - return IWineD3DDevice_SetTextureStageState(This->wineD3DDevice, - 0, TexStageStateType, - Value); - } + return IWineD3DDevice_SetSamplerState(This->wineD3DDevice, + 0, WINED3DSAMP_ADDRESSV, + Value);
case D3DRENDERSTATE_TEXTUREMAPBLEND: { @@ -4020,11 +3997,23 @@ IDirect3DDeviceImpl_7_GetTextureStageState(IDirect3DDevice7 *iface, Stage, WINED3DSAMP_MAGFILTER, State); + + case D3DTSS_ADDRESS: + case D3DTSS_ADDRESSU: + return IWineD3DDevice_GetSamplerState(This->wineD3DDevice, + Stage, + WINED3DSAMP_ADDRESSU, + State); + case D3DTSS_ADDRESSV: + return IWineD3DDevice_GetSamplerState(This->wineD3DDevice, + Stage, + WINED3DSAMP_ADDRESSV, + State); default: return IWineD3DDevice_GetTextureStageState(This->wineD3DDevice, - Stage, - TexStageStateType, - State); + Stage, + TexStageStateType, + State); } }
@@ -4103,12 +4092,28 @@ IDirect3DDeviceImpl_7_SetTextureStageState(IDirect3DDevice7 *iface, WINED3DSAMP_MAGFILTER, State);
+ case D3DTSS_ADDRESS: + IWineD3DDevice_SetSamplerState(This->wineD3DDevice, + Stage, + WINED3DSAMP_ADDRESSV, + State); + /* Drop through */ + case D3DTSS_ADDRESSU: + return IWineD3DDevice_SetSamplerState(This->wineD3DDevice, + Stage, + WINED3DSAMP_ADDRESSU, + State); + case D3DTSS_ADDRESSV: + return IWineD3DDevice_SetSamplerState(This->wineD3DDevice, + Stage, + WINED3DSAMP_ADDRESSV, + State); default:
return IWineD3DDevice_SetTextureStageState(This->wineD3DDevice, - Stage, - TexStageStateType, - State); + Stage, + TexStageStateType, + State); } }