[PATCH 4/4] wined3d: Remove stateblock handling from wined3d_device_multiply_transform().
Sven Baars
sven.wine at gmail.com
Wed Jan 23 02:08:21 CST 2019
On 23-01-19 02:50, Zebediah Figura wrote:
> - mat = &device->update_state->transforms[state];
> - multiply_matrix(&temp, mat, matrix);
> -
> - /* Apply change via set transform - will reapply to eg. lights this way. */
> - wined3d_device_set_transform(device, state, &temp);
> + /* Tests show that stateblock recording is ignored; the change goes directly
> + * into the primary stateblock. */
> + mat = &device->state.transforms[state];
> + multiply_matrix(mat, mat, matrix);
> + wined3d_cs_emit_set_transform(device->cs, state, matrix);
> }
>
> /* Note lights are real special cases. Although the device caps state only
Hey Zeb,
I don't think this works properly, since inline matrix multiplication is
not a thing. You'll need the temp matrix here, unless you're really
lucky with the matrix values.
Sven
More information about the wine-devel
mailing list