Rico Schüller : d3dx9: Handle ST_PARAMETER in d3dx9_parse resource().
Alexandre Julliard
julliard at winehq.org
Fri Jul 1 14:11:04 CDT 2011
Module: wine
Branch: master
Commit: 7e7549abc54c8a243bdd6ea509bdf1eff8920188
URL: http://source.winehq.org/git/wine.git/?a=commit;h=7e7549abc54c8a243bdd6ea509bdf1eff8920188
Author: Rico Schüller <kgbricola at web.de>
Date: Fri Jul 1 13:50:27 2011 +0200
d3dx9: Handle ST_PARAMETER in d3dx9_parse resource().
---
dlls/d3dx9_36/effect.c | 14 +++++++++++---
1 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/dlls/d3dx9_36/effect.c b/dlls/d3dx9_36/effect.c
index 5d76917..b4f1932 100644
--- a/dlls/d3dx9_36/effect.c
+++ b/dlls/d3dx9_36/effect.c
@@ -88,6 +88,7 @@ enum SHADER_CONSTANT_TYPE
enum STATE_TYPE
{
ST_CONSTANT,
+ ST_PARAMETER,
ST_FXLC,
};
@@ -4739,7 +4740,7 @@ static HRESULT d3dx9_parse_resource(struct ID3DXBaseEffectImpl *base, const char
DWORD index, state_index, usage;
struct d3dx_state *state;
struct d3dx_parameter *param;
- HRESULT hr;
+ HRESULT hr = E_FAIL;
read_dword(ptr, &technique_index);
TRACE("techn: %u\n", technique_index);
@@ -4828,14 +4829,21 @@ static HRESULT d3dx9_parse_resource(struct ID3DXBaseEffectImpl *base, const char
default:
FIXME("Unhandled type %s\n", debug_d3dxparameter_type(param->type));
- hr=E_FAIL;
break;
}
break;
+ case 1:
+ state->type = ST_PARAMETER;
+ hr = d3dx9_copy_data(param->data, ptr);
+ if (hr == D3D_OK)
+ {
+ TRACE("Mapping to parameter %s\n", *(char **)param->data);
+ }
+ break;
+
default:
FIXME("Unknown usage %x\n", usage);
- hr=E_FAIL;
break;
}
More information about the wine-cvs
mailing list