[PATCH 2/4] ddraw: Stop setting the device state when setting transforms.

Zebediah Figura z.figura12 at gmail.com
Thu Feb 27 18:48:44 CST 2020


Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
---
 dlls/ddraw/device.c   | 19 -------------------
 dlls/ddraw/viewport.c |  1 -
 2 files changed, 20 deletions(-)

diff --git a/dlls/ddraw/device.c b/dlls/ddraw/device.c
index ee860d4010..4284109237 100644
--- a/dlls/ddraw/device.c
+++ b/dlls/ddraw/device.c
@@ -1359,28 +1359,16 @@ static HRESULT WINAPI d3d_device1_SetMatrix(IDirect3DDevice *iface,
     *m = *matrix;
 
     if (matrix_handle == device->world)
-    {
         wined3d_stateblock_set_transform(device->state,
                 WINED3D_TS_WORLD_MATRIX(0), (struct wined3d_matrix *)matrix);
-        wined3d_device_set_transform(device->wined3d_device,
-                WINED3D_TS_WORLD_MATRIX(0), (struct wined3d_matrix *)matrix);
-    }
 
     if (matrix_handle == device->view)
-    {
         wined3d_stateblock_set_transform(device->state,
                 WINED3D_TS_VIEW, (struct wined3d_matrix *)matrix);
-        wined3d_device_set_transform(device->wined3d_device,
-                WINED3D_TS_VIEW, (struct wined3d_matrix *)matrix);
-    }
 
     if (matrix_handle == device->proj)
-    {
         wined3d_stateblock_set_transform(device->state,
                 WINED3D_TS_PROJECTION, (struct wined3d_matrix *)matrix);
-        wined3d_device_set_transform(device->wined3d_device,
-                WINED3D_TS_PROJECTION, (struct wined3d_matrix *)matrix);
-    }
 
     wined3d_mutex_unlock();
 
@@ -3135,8 +3123,6 @@ static HRESULT d3d_device7_SetTransform(IDirect3DDevice7 *iface,
     /* Note: D3DMATRIX is compatible with struct wined3d_matrix. */
     wined3d_mutex_lock();
     wined3d_stateblock_set_transform(device->update_state, wined3d_state, (const struct wined3d_matrix *)matrix);
-    if (!device->recording)
-        wined3d_device_set_transform(device->wined3d_device, wined3d_state, (const struct wined3d_matrix *)matrix);
     wined3d_mutex_unlock();
 
     return D3D_OK;
@@ -3179,8 +3165,6 @@ static HRESULT WINAPI d3d_device3_SetTransform(IDirect3DDevice3 *iface,
         multiply_matrix(&projection, &device->legacy_clipspace, (struct wined3d_matrix *)matrix);
         wined3d_stateblock_set_transform(device->state,
                 WINED3D_TS_PROJECTION, (struct wined3d_matrix *)&projection);
-        wined3d_device_set_transform(device->wined3d_device,
-                WINED3D_TS_PROJECTION, (struct wined3d_matrix *)&projection);
         memcpy(&device->legacy_projection, matrix, sizeof(*matrix));
         wined3d_mutex_unlock();
 
@@ -3350,8 +3334,6 @@ static HRESULT d3d_device7_MultiplyTransform(IDirect3DDevice7 *iface,
     wined3d_mutex_lock();
     wined3d_stateblock_multiply_transform(device->state,
             wined3d_state, (struct wined3d_matrix *)matrix);
-    wined3d_device_multiply_transform(device->wined3d_device,
-            wined3d_state, (struct wined3d_matrix *)matrix);
     wined3d_mutex_unlock();
 
     return D3D_OK;
@@ -3391,7 +3373,6 @@ static HRESULT WINAPI d3d_device3_MultiplyTransform(IDirect3DDevice3 *iface,
         multiply_matrix(&tmp, &device->legacy_projection, (struct wined3d_matrix *)matrix);
         multiply_matrix(&projection, &device->legacy_clipspace, &tmp);
         wined3d_stateblock_set_transform(device->state, WINED3D_TS_PROJECTION, &projection);
-        wined3d_device_set_transform(device->wined3d_device, WINED3D_TS_PROJECTION, &projection);
         device->legacy_projection = tmp;
         wined3d_mutex_unlock();
 
diff --git a/dlls/ddraw/viewport.c b/dlls/ddraw/viewport.c
index 2f2515036d..ac56928e4f 100644
--- a/dlls/ddraw/viewport.c
+++ b/dlls/ddraw/viewport.c
@@ -39,7 +39,6 @@ static void update_clip_space(struct d3d_device *device,
 
     multiply_matrix(&projection, &clip_space, &device->legacy_projection);
     wined3d_stateblock_set_transform(device->state, WINED3D_TS_PROJECTION, &projection);
-    wined3d_device_set_transform(device->wined3d_device, WINED3D_TS_PROJECTION, &projection);
     device->legacy_clipspace = clip_space;
 }
 
-- 
2.25.0




More information about the wine-devel mailing list