From 3eb26010d8a1b350035dafeb47af4bdc1cc9766f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rico=20Sch=C3=BCller?= Date: Wed, 26 Sep 2012 12:21:54 +0200 Subject: [PATCH] d3dx9: Fix shader constant byte calculation. --- dlls/d3dx9_36/shader.c | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/dlls/d3dx9_36/shader.c b/dlls/d3dx9_36/shader.c index c62c8e50cc6..dfa0488dae8 100644 --- a/dlls/d3dx9_36/shader.c +++ b/dlls/d3dx9_36/shader.c @@ -671,15 +671,6 @@ static inline int is_vertex_shader(DWORD version) return (version & 0xFFFF0000) == 0xFFFE0000; } -static DWORD calc_bytes(D3DXCONSTANT_DESC *desc) -{ - if (desc->RegisterSet != D3DXRS_FLOAT4 && desc->RegisterSet != D3DXRS_SAMPLER) - FIXME("Don't know how to calculate Bytes for constants of type %s\n", - debug_d3dxparameter_registerset(desc->RegisterSet)); - - return 4 * desc->Elements * desc->Rows * desc->Columns; -} - static inline struct ctab_constant *constant_from_handle(D3DXHANDLE handle) { return (struct ctab_constant *)handle; @@ -1656,7 +1647,7 @@ static HRESULT parse_ctab_constant_type(const char *ctab, DWORD typeoffset, stru } constant->desc.RegisterCount = max(0, min(max - index, size)); - constant->desc.Bytes = calc_bytes(&constant->desc); + constant->desc.Bytes = 4 * constant->desc.Elements * type->Rows * type->Columns; return D3D_OK;