[PATCH 2/4] d3dx9: Implement ID3DXBaseEffect::SetVector().

Matteo Bruni matteo.mystral at gmail.com
Tue Dec 13 09:10:04 CST 2011


Hi Rico,

2011/12/13 Rico Schüller <kgbricola at web.de>:
> ---
>  dlls/d3dx9_36/effect.c |   52
> +++++++++++++++++++++++++++++++++++++++++++++--
>  1 files changed, 49 insertions(+), 3 deletions(-)
>
> +static void set_vector(struct d3dx_parameter *param, CONST D3DXVECTOR4 *vector)
> +{
> +    set_number((float *)param->data, param->type, vector, D3DXPT_FLOAT);
> +    if (param->columns > 1) set_number((FLOAT *)param->data + 1, param->type, (FLOAT *)vector + 1, D3DXPT_FLOAT);
> +    if (param->columns > 2) set_number((FLOAT *)param->data + 2, param->type, (FLOAT *)vector + 2, D3DXPT_FLOAT);
> +    if (param->columns > 3) set_number((FLOAT *)param->data + 3, param->type, (FLOAT *)vector + 3, D3DXPT_FLOAT);
> +}

Can't you use a for loop instead? While you're at it, you should also
pick one between "float" and "FLOAT".



More information about the wine-devel mailing list