You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-09-12 18:50:20 -07:00
Rebase against cfbc37c699e3b3b27df4c566014e6dde9c7194b8.
This commit is contained in:
@@ -1,23 +1,23 @@
|
||||
From 0384901fc9ef670f7e83e7dfcbdad35edff52746 Mon Sep 17 00:00:00 2001
|
||||
From c87f87830176d05d7a14297174cb439f877c83c9 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Stefan=20D=C3=B6singer?= <stefan@codeweavers.com>
|
||||
Date: Sun, 17 Nov 2013 20:19:24 +0100
|
||||
Subject: wined3d: Pass a context to surface_load_location.
|
||||
|
||||
---
|
||||
dlls/wined3d/context.c | 4 +-
|
||||
dlls/wined3d/device.c | 20 +++----
|
||||
dlls/wined3d/device.c | 22 ++++----
|
||||
dlls/wined3d/drawprim.c | 20 +++----
|
||||
dlls/wined3d/surface.c | 120 +++++++++++++++++++++++++----------------
|
||||
dlls/wined3d/swapchain.c | 8 +--
|
||||
dlls/wined3d/texture.c | 7 ++-
|
||||
dlls/wined3d/wined3d_private.h | 5 +-
|
||||
7 files changed, 107 insertions(+), 77 deletions(-)
|
||||
7 files changed, 108 insertions(+), 78 deletions(-)
|
||||
|
||||
diff --git a/dlls/wined3d/context.c b/dlls/wined3d/context.c
|
||||
index a122845..12a172b 100644
|
||||
index 79125d1..b900417 100644
|
||||
--- a/dlls/wined3d/context.c
|
||||
+++ b/dlls/wined3d/context.c
|
||||
@@ -2212,7 +2212,7 @@ static BOOL match_depth_stencil_format(const struct wined3d_format *existing,
|
||||
@@ -2263,7 +2263,7 @@ static BOOL match_depth_stencil_format(const struct wined3d_format *existing,
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ index a122845..12a172b 100644
|
||||
static void context_validate_onscreen_formats(struct wined3d_context *context,
|
||||
const struct wined3d_rendertarget_view *depth_stencil)
|
||||
{
|
||||
@@ -2228,7 +2228,7 @@ static void context_validate_onscreen_formats(struct wined3d_context *context,
|
||||
@@ -2279,7 +2279,7 @@ static void context_validate_onscreen_formats(struct wined3d_context *context,
|
||||
WARN("Depth stencil format is not supported by WGL, rendering the backbuffer in an FBO\n");
|
||||
|
||||
/* The currently active context is the necessary context to access the swapchain's onscreen buffers */
|
||||
@@ -36,7 +36,7 @@ index a122845..12a172b 100644
|
||||
swapchain_update_draw_bindings(swapchain);
|
||||
context_set_render_offscreen(context, TRUE);
|
||||
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
|
||||
index 56cf325..0521a94 100644
|
||||
index 880f77c..67baca1 100644
|
||||
--- a/dlls/wined3d/device.c
|
||||
+++ b/dlls/wined3d/device.c
|
||||
@@ -300,6 +300,15 @@ void device_clear_render_targets(struct wined3d_device *device, UINT rt_count, c
|
||||
@@ -76,8 +76,17 @@ index 56cf325..0521a94 100644
|
||||
if (target)
|
||||
{
|
||||
render_offscreen = context->render_offscreen;
|
||||
@@ -4049,7 +4049,7 @@ void CDECL wined3d_device_update_sub_resource(struct wined3d_device *device, str
|
||||
&& src_rect.bottom == sub_resource->height)
|
||||
wined3d_texture_prepare_texture(texture, context, FALSE);
|
||||
else
|
||||
- surface_load_location(surface, WINED3D_LOCATION_TEXTURE_RGB);
|
||||
+ surface_load_location(surface, context, WINED3D_LOCATION_TEXTURE_RGB);
|
||||
wined3d_texture_bind_and_dirtify(texture, context, FALSE);
|
||||
|
||||
wined3d_surface_upload_data(surface, gl_info, resource->format,
|
||||
diff --git a/dlls/wined3d/drawprim.c b/dlls/wined3d/drawprim.c
|
||||
index c0654a6..913ada5 100644
|
||||
index 7a6a6e9..cec092f 100644
|
||||
--- a/dlls/wined3d/drawprim.c
|
||||
+++ b/dlls/wined3d/drawprim.c
|
||||
@@ -611,6 +611,15 @@ void draw_primitive(struct wined3d_device *device, UINT start_idx, UINT index_co
|
||||
@@ -120,7 +129,7 @@ index c0654a6..913ada5 100644
|
||||
{
|
||||
/* Note that this depends on the context_acquire() call above to set
|
||||
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
|
||||
index 320bd31..a0342a0 100644
|
||||
index 537ac09..186e702 100644
|
||||
--- a/dlls/wined3d/surface.c
|
||||
+++ b/dlls/wined3d/surface.c
|
||||
@@ -753,7 +753,16 @@ static void surface_unmap(struct wined3d_surface *surface)
|
||||
@@ -232,7 +241,7 @@ index 320bd31..a0342a0 100644
|
||||
surface_evict_sysmem(surface);
|
||||
}
|
||||
|
||||
@@ -2722,10 +2732,16 @@ HRESULT CDECL wined3d_surface_map(struct wined3d_surface *surface,
|
||||
@@ -2709,10 +2719,16 @@ HRESULT CDECL wined3d_surface_map(struct wined3d_surface *surface,
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -250,7 +259,7 @@ index 320bd31..a0342a0 100644
|
||||
}
|
||||
|
||||
if (!(flags & (WINED3D_MAP_NO_DIRTY_UPDATE | WINED3D_MAP_READONLY)))
|
||||
@@ -2807,6 +2823,8 @@ HRESULT CDECL wined3d_surface_map(struct wined3d_surface *surface,
|
||||
@@ -2794,6 +2810,8 @@ HRESULT CDECL wined3d_surface_map(struct wined3d_surface *surface,
|
||||
HRESULT CDECL wined3d_surface_getdc(struct wined3d_surface *surface, HDC *dc)
|
||||
{
|
||||
HRESULT hr;
|
||||
@@ -259,7 +268,7 @@ index 320bd31..a0342a0 100644
|
||||
|
||||
TRACE("surface %p, dc %p.\n", surface, dc);
|
||||
|
||||
@@ -2818,26 +2836,36 @@ HRESULT CDECL wined3d_surface_getdc(struct wined3d_surface *surface, HDC *dc)
|
||||
@@ -2805,26 +2823,36 @@ HRESULT CDECL wined3d_surface_getdc(struct wined3d_surface *surface, HDC *dc)
|
||||
if (surface->resource.map_count)
|
||||
return WINED3DERR_INVALIDCALL;
|
||||
|
||||
@@ -299,7 +308,7 @@ index 320bd31..a0342a0 100644
|
||||
surface->flags |= SFLAG_DCINUSE;
|
||||
surface->resource.map_count++;
|
||||
|
||||
@@ -2875,8 +2903,16 @@ HRESULT CDECL wined3d_surface_releasedc(struct wined3d_surface *surface, HDC dc)
|
||||
@@ -2862,8 +2890,16 @@ HRESULT CDECL wined3d_surface_releasedc(struct wined3d_surface *surface, HDC dc)
|
||||
* copied back to the DIB in the next getdc call.
|
||||
*
|
||||
* The same consideration applies to user memory surfaces. */
|
||||
@@ -317,7 +326,7 @@ index 320bd31..a0342a0 100644
|
||||
}
|
||||
|
||||
return WINED3D_OK;
|
||||
@@ -4117,7 +4153,7 @@ static void surface_load_sysmem(struct wined3d_surface *surface,
|
||||
@@ -4107,7 +4143,7 @@ static void surface_load_sysmem(struct wined3d_surface *surface,
|
||||
}
|
||||
|
||||
if (surface->locations & (WINED3D_LOCATION_RB_MULTISAMPLE | WINED3D_LOCATION_RB_RESOLVED))
|
||||
@@ -326,7 +335,7 @@ index 320bd31..a0342a0 100644
|
||||
|
||||
/* Download the surface to system memory. */
|
||||
if (surface->locations & (WINED3D_LOCATION_TEXTURE_RGB | WINED3D_LOCATION_TEXTURE_SRGB))
|
||||
@@ -4153,7 +4189,7 @@ static HRESULT surface_load_drawable(struct wined3d_surface *surface,
|
||||
@@ -4143,7 +4179,7 @@ static HRESULT surface_load_drawable(struct wined3d_surface *surface,
|
||||
}
|
||||
|
||||
surface_get_rect(surface, NULL, &r);
|
||||
@@ -335,7 +344,7 @@ index 320bd31..a0342a0 100644
|
||||
surface_blt_to_drawable(surface->resource.device, context,
|
||||
WINED3D_TEXF_POINT, FALSE, surface, &r, surface, &r);
|
||||
|
||||
@@ -4226,7 +4262,7 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
@@ -4216,7 +4252,7 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
/* Performance warning... */
|
||||
FIXME("Downloading RGB surface %p to reload it as sRGB.\n", surface);
|
||||
surface_prepare_map_memory(surface);
|
||||
@@ -344,7 +353,7 @@ index 320bd31..a0342a0 100644
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -4237,7 +4273,7 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
@@ -4227,7 +4263,7 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
/* Performance warning... */
|
||||
FIXME("Downloading sRGB surface %p to reload it as RGB.\n", surface);
|
||||
surface_prepare_map_memory(surface);
|
||||
@@ -353,7 +362,7 @@ index 320bd31..a0342a0 100644
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4246,7 +4282,7 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
@@ -4236,7 +4272,7 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
WARN("Trying to load a texture from sysmem, but no simple location is valid.\n");
|
||||
/* Lets hope we get it from somewhere... */
|
||||
surface_prepare_system_memory(surface);
|
||||
@@ -362,7 +371,7 @@ index 320bd31..a0342a0 100644
|
||||
}
|
||||
|
||||
wined3d_texture_prepare_texture(texture, context, srgb);
|
||||
@@ -4272,7 +4308,7 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
@@ -4262,7 +4298,7 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
surface->resource.map_binding = WINED3D_LOCATION_SYSMEM;
|
||||
|
||||
surface_prepare_map_memory(surface);
|
||||
@@ -371,7 +380,7 @@ index 320bd31..a0342a0 100644
|
||||
surface_remove_pbo(surface, gl_info);
|
||||
}
|
||||
|
||||
@@ -4340,11 +4376,10 @@ static void surface_multisample_resolve(struct wined3d_surface *surface, struct
|
||||
@@ -4330,11 +4366,10 @@ static void surface_multisample_resolve(struct wined3d_surface *surface, struct
|
||||
surface, WINED3D_LOCATION_RB_MULTISAMPLE, &rect, surface, WINED3D_LOCATION_RB_RESOLVED, &rect);
|
||||
}
|
||||
|
||||
@@ -385,7 +394,7 @@ index 320bd31..a0342a0 100644
|
||||
|
||||
TRACE("surface %p, location %s.\n", surface, wined3d_debug_location(location));
|
||||
|
||||
@@ -4353,9 +4388,7 @@ HRESULT surface_load_location(struct wined3d_surface *surface, DWORD location)
|
||||
@@ -4343,9 +4378,7 @@ HRESULT surface_load_location(struct wined3d_surface *surface, DWORD location)
|
||||
if (location == WINED3D_LOCATION_TEXTURE_RGB
|
||||
&& surface->locations & (WINED3D_LOCATION_DRAWABLE | WINED3D_LOCATION_DISCARDED))
|
||||
{
|
||||
@@ -395,7 +404,7 @@ index 320bd31..a0342a0 100644
|
||||
return WINED3D_OK;
|
||||
}
|
||||
else if (location & surface->locations
|
||||
@@ -4399,33 +4432,22 @@ HRESULT surface_load_location(struct wined3d_surface *surface, DWORD location)
|
||||
@@ -4389,33 +4422,22 @@ HRESULT surface_load_location(struct wined3d_surface *surface, DWORD location)
|
||||
case WINED3D_LOCATION_USER_MEMORY:
|
||||
case WINED3D_LOCATION_SYSMEM:
|
||||
case WINED3D_LOCATION_BUFFER:
|
||||
@@ -432,7 +441,7 @@ index 320bd31..a0342a0 100644
|
||||
return hr;
|
||||
break;
|
||||
|
||||
@@ -5542,7 +5564,11 @@ HRESULT CDECL wined3d_surface_blt(struct wined3d_surface *dst_surface, const REC
|
||||
@@ -5532,7 +5554,11 @@ HRESULT CDECL wined3d_surface_blt(struct wined3d_surface *dst_surface, const REC
|
||||
if (SUCCEEDED(surface_upload_from_surface(dst_surface, &dst_point, src_surface, &src_rect)))
|
||||
{
|
||||
if (!wined3d_resource_is_offscreen(&dst_surface->container->resource))
|
||||
@@ -446,7 +455,7 @@ index 320bd31..a0342a0 100644
|
||||
}
|
||||
}
|
||||
diff --git a/dlls/wined3d/swapchain.c b/dlls/wined3d/swapchain.c
|
||||
index 146f5d6..4f4d4df 100644
|
||||
index 2801215..9750c8c 100644
|
||||
--- a/dlls/wined3d/swapchain.c
|
||||
+++ b/dlls/wined3d/swapchain.c
|
||||
@@ -309,7 +309,7 @@ static void swapchain_blit(const struct wined3d_swapchain *swapchain,
|
||||
@@ -485,10 +494,10 @@ index 146f5d6..4f4d4df 100644
|
||||
src_dc = front->hDC;
|
||||
window = swapchain->win_handle;
|
||||
diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c
|
||||
index f4e77fb..2f0d3d4 100644
|
||||
index c7fc3a7..67bfa63 100644
|
||||
--- a/dlls/wined3d/texture.c
|
||||
+++ b/dlls/wined3d/texture.c
|
||||
@@ -753,16 +753,19 @@ static void wined3d_texture_upload_data(struct wined3d_texture *texture, const s
|
||||
@@ -768,16 +768,19 @@ static HRESULT wined3d_texture_upload_data(struct wined3d_texture *texture,
|
||||
static void texture2d_sub_resource_load(struct wined3d_resource *sub_resource,
|
||||
struct wined3d_context *context, BOOL srgb)
|
||||
{
|
||||
@@ -511,10 +520,10 @@ index f4e77fb..2f0d3d4 100644
|
||||
}
|
||||
|
||||
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
|
||||
index 9e6cb5e..ccfebf0 100644
|
||||
index 16336c3..92d179e 100644
|
||||
--- a/dlls/wined3d/wined3d_private.h
|
||||
+++ b/dlls/wined3d/wined3d_private.h
|
||||
@@ -2399,11 +2399,12 @@ GLenum surface_get_gl_buffer(const struct wined3d_surface *surface) DECLSPEC_HID
|
||||
@@ -2429,11 +2429,12 @@ GLenum surface_get_gl_buffer(const struct wined3d_surface *surface) DECLSPEC_HID
|
||||
void surface_get_drawable_size(const struct wined3d_surface *surface, const struct wined3d_context *context,
|
||||
unsigned int *width, unsigned int *height) DECLSPEC_HIDDEN;
|
||||
void surface_invalidate_location(struct wined3d_surface *surface, DWORD location) DECLSPEC_HIDDEN;
|
||||
@@ -530,5 +539,5 @@ index 9e6cb5e..ccfebf0 100644
|
||||
void surface_prepare_rb(struct wined3d_surface *surface,
|
||||
const struct wined3d_gl_info *gl_info, BOOL multisample) DECLSPEC_HIDDEN;
|
||||
--
|
||||
2.4.2
|
||||
2.5.0
|
||||
|
||||
|
@@ -1,19 +1,19 @@
|
||||
From f697640248f83b974829df63769cbb6fb4f6b722 Mon Sep 17 00:00:00 2001
|
||||
From 651ea75a3da6c0608cb4dae8425f57954ffe723b Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Stefan=20D=C3=B6singer?= <stefan@codeweavers.com>
|
||||
Date: Sat, 4 Jan 2014 00:53:47 +0100
|
||||
Subject: wined3d: Remove surface_validate_location.
|
||||
|
||||
---
|
||||
dlls/wined3d/arb_program_shader.c | 2 +-
|
||||
dlls/wined3d/device.c | 2 +-
|
||||
dlls/wined3d/device.c | 4 ++--
|
||||
dlls/wined3d/surface.c | 29 +++++++++++------------------
|
||||
dlls/wined3d/swapchain.c | 12 ++++++------
|
||||
dlls/wined3d/texture.c | 4 +---
|
||||
dlls/wined3d/wined3d_private.h | 1 -
|
||||
6 files changed, 20 insertions(+), 30 deletions(-)
|
||||
6 files changed, 21 insertions(+), 31 deletions(-)
|
||||
|
||||
diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c
|
||||
index 57bc787..bdfc42d 100644
|
||||
index a5c5c43..8f74bf6 100644
|
||||
--- a/dlls/wined3d/arb_program_shader.c
|
||||
+++ b/dlls/wined3d/arb_program_shader.c
|
||||
@@ -7864,7 +7864,7 @@ static void arbfp_blit_surface(struct wined3d_device *device, DWORD filter,
|
||||
@@ -26,7 +26,7 @@ index 57bc787..bdfc42d 100644
|
||||
}
|
||||
|
||||
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
|
||||
index 08987f2..210e53e 100644
|
||||
index 05652e0..a7a83da 100644
|
||||
--- a/dlls/wined3d/device.c
|
||||
+++ b/dlls/wined3d/device.c
|
||||
@@ -392,7 +392,7 @@ void device_clear_render_targets(struct wined3d_device *device, UINT rt_count, c
|
||||
@@ -38,6 +38,15 @@ index 08987f2..210e53e 100644
|
||||
surface_invalidate_location(rt, ~rt->container->resource.draw_binding);
|
||||
}
|
||||
}
|
||||
@@ -4057,7 +4057,7 @@ void CDECL wined3d_device_update_sub_resource(struct wined3d_device *device, str
|
||||
|
||||
context_release(context);
|
||||
|
||||
- surface_validate_location(surface, WINED3D_LOCATION_TEXTURE_RGB);
|
||||
+ wined3d_resource_validate_location(&surface->resource, WINED3D_LOCATION_TEXTURE_RGB);
|
||||
surface_invalidate_location(surface, ~WINED3D_LOCATION_TEXTURE_RGB);
|
||||
}
|
||||
|
||||
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
|
||||
index 4a61d1b..8ec6ab8 100644
|
||||
--- a/dlls/wined3d/surface.c
|
||||
@@ -156,7 +165,7 @@ index 4a61d1b..8ec6ab8 100644
|
||||
}
|
||||
|
||||
diff --git a/dlls/wined3d/swapchain.c b/dlls/wined3d/swapchain.c
|
||||
index 2e91c7c..a62d245 100644
|
||||
index ce7ff46..cd1aabd 100644
|
||||
--- a/dlls/wined3d/swapchain.c
|
||||
+++ b/dlls/wined3d/swapchain.c
|
||||
@@ -569,19 +569,19 @@ static void swapchain_gl_present(struct wined3d_swapchain *swapchain, const RECT
|
||||
@@ -202,10 +211,10 @@ index 2e91c7c..a62d245 100644
|
||||
}
|
||||
|
||||
diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c
|
||||
index 75cf863..cf6e3e3 100644
|
||||
index ffaf779..e6e0d78 100644
|
||||
--- a/dlls/wined3d/texture.c
|
||||
+++ b/dlls/wined3d/texture.c
|
||||
@@ -785,9 +785,7 @@ static void texture2d_sub_resource_invalidate_location(struct wined3d_resource *
|
||||
@@ -800,9 +800,7 @@ static void texture2d_sub_resource_invalidate_location(struct wined3d_resource *
|
||||
|
||||
static void texture2d_sub_resource_validate_location(struct wined3d_resource *sub_resource, DWORD location)
|
||||
{
|
||||
@@ -217,10 +226,10 @@ index 75cf863..cf6e3e3 100644
|
||||
|
||||
static void texture2d_sub_resource_upload_data(struct wined3d_resource *sub_resource,
|
||||
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
|
||||
index 0aa218c..fa842fa 100644
|
||||
index 7944ae0..6a3a863 100644
|
||||
--- a/dlls/wined3d/wined3d_private.h
|
||||
+++ b/dlls/wined3d/wined3d_private.h
|
||||
@@ -2442,7 +2442,6 @@ HRESULT wined3d_surface_update_desc(struct wined3d_surface *surface,
|
||||
@@ -2447,7 +2447,6 @@ HRESULT wined3d_surface_update_desc(struct wined3d_surface *surface,
|
||||
const struct wined3d_gl_info *gl_info, void *mem, unsigned int pitch) DECLSPEC_HIDDEN;
|
||||
HRESULT surface_upload_from_surface(struct wined3d_surface *dst_surface, const POINT *dst_point,
|
||||
struct wined3d_surface *src_surface, const RECT *src_rect) DECLSPEC_HIDDEN;
|
||||
@@ -229,5 +238,5 @@ index 0aa218c..fa842fa 100644
|
||||
GLenum target, unsigned int level, unsigned int layer, DWORD flags,
|
||||
struct wined3d_surface **surface) DECLSPEC_HIDDEN;
|
||||
--
|
||||
2.4.5
|
||||
2.5.0
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 4f63b8a3415a44d16a20acfc6d4571fa10e19a55 Mon Sep 17 00:00:00 2001
|
||||
From fe1d9b795638409df399927a874d91ee301b39e1 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Stefan=20D=C3=B6singer?= <stefan@codeweavers.com>
|
||||
Date: Sat, 4 Jan 2014 01:02:15 +0100
|
||||
Subject: wined3d: Remove surface_invalidate_location.
|
||||
@@ -6,19 +6,19 @@ Subject: wined3d: Remove surface_invalidate_location.
|
||||
---
|
||||
dlls/wined3d/arb_program_shader.c | 2 +-
|
||||
dlls/wined3d/context.c | 2 +-
|
||||
dlls/wined3d/device.c | 2 +-
|
||||
dlls/wined3d/device.c | 4 ++--
|
||||
dlls/wined3d/drawprim.c | 2 +-
|
||||
dlls/wined3d/surface.c | 45 ++++++++++++++++-----------------------
|
||||
dlls/wined3d/swapchain.c | 12 +++++------
|
||||
dlls/wined3d/texture.c | 6 ++----
|
||||
dlls/wined3d/wined3d_private.h | 1 -
|
||||
8 files changed, 30 insertions(+), 42 deletions(-)
|
||||
8 files changed, 31 insertions(+), 43 deletions(-)
|
||||
|
||||
diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c
|
||||
index 35637f2..0d61251 100644
|
||||
index 8f74bf6..71c7c2e 100644
|
||||
--- a/dlls/wined3d/arb_program_shader.c
|
||||
+++ b/dlls/wined3d/arb_program_shader.c
|
||||
@@ -7922,7 +7922,7 @@ static void arbfp_blit_surface(struct wined3d_device *device, DWORD filter,
|
||||
@@ -7865,7 +7865,7 @@ static void arbfp_blit_surface(struct wined3d_device *device, DWORD filter,
|
||||
context_release(context);
|
||||
|
||||
wined3d_resource_validate_location(&dst_surface->resource, dst_surface->container->resource.draw_binding);
|
||||
@@ -28,10 +28,10 @@ index 35637f2..0d61251 100644
|
||||
|
||||
static HRESULT arbfp_blit_color_fill(struct wined3d_device *device, struct wined3d_surface *dst_surface,
|
||||
diff --git a/dlls/wined3d/context.c b/dlls/wined3d/context.c
|
||||
index ac4c7cb..167ea7d 100644
|
||||
index b900417..4752fff 100644
|
||||
--- a/dlls/wined3d/context.c
|
||||
+++ b/dlls/wined3d/context.c
|
||||
@@ -3192,7 +3192,7 @@ static void context_setup_target(struct wined3d_context *context, struct wined3d
|
||||
@@ -3281,7 +3281,7 @@ static void context_setup_target(struct wined3d_context *context, struct wined3d
|
||||
if (texture->texture_srgb.name)
|
||||
wined3d_texture_load(texture, context, TRUE);
|
||||
wined3d_texture_load(texture, context, FALSE);
|
||||
@@ -41,7 +41,7 @@ index ac4c7cb..167ea7d 100644
|
||||
}
|
||||
|
||||
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
|
||||
index f5fdad2..4e21f49 100644
|
||||
index a30c618..a127f9d 100644
|
||||
--- a/dlls/wined3d/device.c
|
||||
+++ b/dlls/wined3d/device.c
|
||||
@@ -393,7 +393,7 @@ void device_clear_render_targets(struct wined3d_device *device, UINT rt_count, c
|
||||
@@ -53,8 +53,17 @@ index f5fdad2..4e21f49 100644
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4058,7 +4058,7 @@ void CDECL wined3d_device_update_sub_resource(struct wined3d_device *device, str
|
||||
context_release(context);
|
||||
|
||||
wined3d_resource_validate_location(&surface->resource, WINED3D_LOCATION_TEXTURE_RGB);
|
||||
- surface_invalidate_location(surface, ~WINED3D_LOCATION_TEXTURE_RGB);
|
||||
+ wined3d_resource_invalidate_location(&surface->resource, ~WINED3D_LOCATION_TEXTURE_RGB);
|
||||
}
|
||||
|
||||
HRESULT CDECL wined3d_device_clear_rendertarget_view(struct wined3d_device *device,
|
||||
diff --git a/dlls/wined3d/drawprim.c b/dlls/wined3d/drawprim.c
|
||||
index 567550e..6f226ce 100644
|
||||
index 4d47a21..8a27363 100644
|
||||
--- a/dlls/wined3d/drawprim.c
|
||||
+++ b/dlls/wined3d/drawprim.c
|
||||
@@ -629,7 +629,7 @@ void draw_primitive(struct wined3d_device *device, UINT start_idx, UINT index_co
|
||||
@@ -67,10 +76,10 @@ index 567550e..6f226ce 100644
|
||||
}
|
||||
}
|
||||
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
|
||||
index 350a2b2..929ea5d 100644
|
||||
index 3dfa290..0a22b3d 100644
|
||||
--- a/dlls/wined3d/surface.c
|
||||
+++ b/dlls/wined3d/surface.c
|
||||
@@ -598,7 +598,7 @@ static void surface_evict_sysmem(struct wined3d_surface *surface)
|
||||
@@ -599,7 +599,7 @@ static void surface_evict_sysmem(struct wined3d_surface *surface)
|
||||
return;
|
||||
|
||||
wined3d_resource_free_sysmem(&surface->resource);
|
||||
@@ -79,7 +88,7 @@ index 350a2b2..929ea5d 100644
|
||||
}
|
||||
|
||||
static void surface_release_client_storage(struct wined3d_surface *surface)
|
||||
@@ -1128,7 +1128,7 @@ static void surface_remove_pbo(struct wined3d_surface *surface, const struct win
|
||||
@@ -1131,7 +1131,7 @@ static void surface_remove_pbo(struct wined3d_surface *surface, const struct win
|
||||
checkGLcall("glDeleteBuffers(1, &surface->pbo)");
|
||||
|
||||
surface->pbo = 0;
|
||||
@@ -88,7 +97,7 @@ index 350a2b2..929ea5d 100644
|
||||
}
|
||||
|
||||
static ULONG surface_resource_incref(struct wined3d_resource *resource)
|
||||
@@ -1168,7 +1168,7 @@ static void surface_unload(struct wined3d_resource *resource)
|
||||
@@ -1171,7 +1171,7 @@ static void surface_unload(struct wined3d_resource *resource)
|
||||
surface_prepare_system_memory(surface);
|
||||
memset(surface->resource.heap_memory, 0, surface->resource.size);
|
||||
wined3d_resource_validate_location(&surface->resource, WINED3D_LOCATION_SYSMEM);
|
||||
@@ -97,7 +106,7 @@ index 350a2b2..929ea5d 100644
|
||||
|
||||
/* We also get here when the ddraw swapchain is destroyed, for example
|
||||
* for a mode switch. In this case this surface won't necessarily be
|
||||
@@ -1180,7 +1180,7 @@ static void surface_unload(struct wined3d_resource *resource)
|
||||
@@ -1183,7 +1183,7 @@ static void surface_unload(struct wined3d_resource *resource)
|
||||
{
|
||||
surface_prepare_map_memory(surface);
|
||||
surface_load_location(surface, context, surface->resource.map_binding);
|
||||
@@ -106,7 +115,7 @@ index 350a2b2..929ea5d 100644
|
||||
}
|
||||
|
||||
/* Destroy PBOs, but load them into real sysmem before */
|
||||
@@ -1218,7 +1218,10 @@ static void surface_unload(struct wined3d_resource *resource)
|
||||
@@ -1221,7 +1221,10 @@ static void surface_unload(struct wined3d_resource *resource)
|
||||
|
||||
static void wined3d_surface_location_invalidated(struct wined3d_resource *resource, DWORD location)
|
||||
{
|
||||
@@ -118,7 +127,7 @@ index 350a2b2..929ea5d 100644
|
||||
}
|
||||
|
||||
static const struct wined3d_resource_ops surface_resource_ops =
|
||||
@@ -1686,7 +1689,7 @@ HRESULT surface_upload_from_surface(struct wined3d_surface *dst_surface, const P
|
||||
@@ -1690,7 +1693,7 @@ HRESULT surface_upload_from_surface(struct wined3d_surface *dst_surface, const P
|
||||
context_release(context);
|
||||
|
||||
wined3d_resource_validate_location(&dst_surface->resource, WINED3D_LOCATION_TEXTURE_RGB);
|
||||
@@ -127,7 +136,7 @@ index 350a2b2..929ea5d 100644
|
||||
|
||||
return WINED3D_OK;
|
||||
}
|
||||
@@ -2746,7 +2749,7 @@ HRESULT CDECL wined3d_surface_map(struct wined3d_surface *surface,
|
||||
@@ -2738,7 +2741,7 @@ HRESULT CDECL wined3d_surface_map(struct wined3d_surface *surface,
|
||||
}
|
||||
|
||||
if (!(flags & (WINED3D_MAP_NO_DIRTY_UPDATE | WINED3D_MAP_READONLY)))
|
||||
@@ -136,7 +145,7 @@ index 350a2b2..929ea5d 100644
|
||||
|
||||
switch (surface->resource.map_binding)
|
||||
{
|
||||
@@ -2862,7 +2865,7 @@ HRESULT CDECL wined3d_surface_getdc(struct wined3d_surface *surface, HDC *dc)
|
||||
@@ -2854,7 +2857,7 @@ HRESULT CDECL wined3d_surface_getdc(struct wined3d_surface *surface, HDC *dc)
|
||||
}
|
||||
|
||||
surface_load_location(surface, context, WINED3D_LOCATION_DIB);
|
||||
@@ -145,7 +154,7 @@ index 350a2b2..929ea5d 100644
|
||||
|
||||
if (context)
|
||||
context_release(context);
|
||||
@@ -2911,7 +2914,7 @@ HRESULT CDECL wined3d_surface_releasedc(struct wined3d_surface *surface, HDC dc)
|
||||
@@ -2903,7 +2906,7 @@ HRESULT CDECL wined3d_surface_releasedc(struct wined3d_surface *surface, HDC dc)
|
||||
context = context_acquire(device, NULL);
|
||||
|
||||
surface_load_location(surface, context, surface->resource.map_binding);
|
||||
@@ -154,7 +163,7 @@ index 350a2b2..929ea5d 100644
|
||||
if (context)
|
||||
context_release(context);
|
||||
}
|
||||
@@ -3289,7 +3292,7 @@ static void fb_copy_to_texture_direct(struct wined3d_surface *dst_surface, struc
|
||||
@@ -3281,7 +3284,7 @@ static void fb_copy_to_texture_direct(struct wined3d_surface *dst_surface, struc
|
||||
/* The texture is now most up to date - If the surface is a render target
|
||||
* and has a drawable, this path is never entered. */
|
||||
wined3d_resource_validate_location(&dst_surface->resource, WINED3D_LOCATION_TEXTURE_RGB);
|
||||
@@ -163,7 +172,7 @@ index 350a2b2..929ea5d 100644
|
||||
}
|
||||
|
||||
/* Uses the hardware to stretch and flip the image */
|
||||
@@ -3357,7 +3360,7 @@ static void fb_copy_to_texture_hwstretch(struct wined3d_surface *dst_surface, st
|
||||
@@ -3349,7 +3352,7 @@ static void fb_copy_to_texture_hwstretch(struct wined3d_surface *dst_surface, st
|
||||
checkGLcall("glEnable(texture_target)");
|
||||
|
||||
/* For now invalidate the texture copy of the back buffer. Drawable and sysmem copy are untouched */
|
||||
@@ -172,7 +181,7 @@ index 350a2b2..929ea5d 100644
|
||||
}
|
||||
|
||||
/* Make sure that the top pixel is always above the bottom pixel, and keep a separate upside down flag
|
||||
@@ -3562,7 +3565,7 @@ static void fb_copy_to_texture_hwstretch(struct wined3d_surface *dst_surface, st
|
||||
@@ -3554,7 +3557,7 @@ static void fb_copy_to_texture_hwstretch(struct wined3d_surface *dst_surface, st
|
||||
/* The texture is now most up to date - If the surface is a render target
|
||||
* and has a drawable, this path is never entered. */
|
||||
wined3d_resource_validate_location(&dst_surface->resource, WINED3D_LOCATION_TEXTURE_RGB);
|
||||
@@ -181,7 +190,7 @@ index 350a2b2..929ea5d 100644
|
||||
}
|
||||
|
||||
/* Front buffer coordinates are always full screen coordinates, but our GL
|
||||
@@ -4064,18 +4067,6 @@ void surface_load_ds_location(struct wined3d_surface *surface, struct wined3d_co
|
||||
@@ -4059,18 +4062,6 @@ void surface_load_ds_location(struct wined3d_surface *surface, struct wined3d_co
|
||||
surface->ds_current_size.cy = surface->resource.height;
|
||||
}
|
||||
|
||||
@@ -200,7 +209,7 @@ index 350a2b2..929ea5d 100644
|
||||
static DWORD resource_access_from_location(DWORD location)
|
||||
{
|
||||
switch (location)
|
||||
@@ -4627,7 +4618,7 @@ static void ffp_blit_blit_surface(struct wined3d_device *device, DWORD filter,
|
||||
@@ -4620,7 +4611,7 @@ static void ffp_blit_blit_surface(struct wined3d_device *device, DWORD filter,
|
||||
(old_color_key_flags & WINED3D_CKEY_SRC_BLT) ? &old_blt_key : NULL);
|
||||
|
||||
wined3d_resource_validate_location(&dst_surface->resource, dst_surface->container->resource.draw_binding);
|
||||
@@ -209,7 +218,7 @@ index 350a2b2..929ea5d 100644
|
||||
}
|
||||
|
||||
const struct blit_shader ffp_blit = {
|
||||
@@ -5599,7 +5590,7 @@ HRESULT CDECL wined3d_surface_blt(struct wined3d_surface *dst_surface, const REC
|
||||
@@ -5600,7 +5591,7 @@ HRESULT CDECL wined3d_surface_blt(struct wined3d_surface *dst_surface, const REC
|
||||
context_release(context);
|
||||
|
||||
wined3d_resource_validate_location(&dst_surface->resource, dst_surface->container->resource.draw_binding);
|
||||
@@ -218,7 +227,7 @@ index 350a2b2..929ea5d 100644
|
||||
|
||||
return WINED3D_OK;
|
||||
}
|
||||
@@ -5727,7 +5718,7 @@ static HRESULT surface_init(struct wined3d_surface *surface, struct wined3d_text
|
||||
@@ -5730,7 +5721,7 @@ static HRESULT surface_init(struct wined3d_surface *surface, struct wined3d_text
|
||||
{
|
||||
wined3d_resource_free_sysmem(&surface->resource);
|
||||
wined3d_resource_validate_location(&surface->resource, WINED3D_LOCATION_DIB);
|
||||
@@ -228,7 +237,7 @@ index 350a2b2..929ea5d 100644
|
||||
|
||||
return hr;
|
||||
diff --git a/dlls/wined3d/swapchain.c b/dlls/wined3d/swapchain.c
|
||||
index 075bffc..bd5348c 100644
|
||||
index cd1aabd..74aefd5 100644
|
||||
--- a/dlls/wined3d/swapchain.c
|
||||
+++ b/dlls/wined3d/swapchain.c
|
||||
@@ -512,7 +512,7 @@ static void swapchain_gl_present(struct wined3d_swapchain *swapchain, const RECT
|
||||
@@ -278,10 +287,10 @@ index 075bffc..bd5348c 100644
|
||||
|
||||
/* MSDN says we're only allowed a single fullscreen swapchain per device,
|
||||
diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c
|
||||
index 172e5c4..140124f 100644
|
||||
index b596aef..3e4e65d 100644
|
||||
--- a/dlls/wined3d/texture.c
|
||||
+++ b/dlls/wined3d/texture.c
|
||||
@@ -779,7 +779,7 @@ static void texture2d_sub_resource_add_dirty_region(struct wined3d_resource *sub
|
||||
@@ -781,7 +781,7 @@ static void texture2d_sub_resource_add_dirty_region(struct wined3d_resource *sub
|
||||
context = context_acquire(surface->resource.device, NULL);
|
||||
surface_load_location(surface, context, surface->resource.map_binding);
|
||||
context_release(context);
|
||||
@@ -290,7 +299,7 @@ index 172e5c4..140124f 100644
|
||||
}
|
||||
|
||||
static void texture2d_sub_resource_cleanup(struct wined3d_resource *sub_resource)
|
||||
@@ -791,9 +791,7 @@ static void texture2d_sub_resource_cleanup(struct wined3d_resource *sub_resource
|
||||
@@ -793,9 +793,7 @@ static void texture2d_sub_resource_cleanup(struct wined3d_resource *sub_resource
|
||||
|
||||
static void texture2d_sub_resource_invalidate_location(struct wined3d_resource *sub_resource, DWORD location)
|
||||
{
|
||||
@@ -302,10 +311,10 @@ index 172e5c4..140124f 100644
|
||||
|
||||
static void texture2d_sub_resource_validate_location(struct wined3d_resource *sub_resource, DWORD location)
|
||||
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
|
||||
index 27bba5b..19b8d31 100644
|
||||
index 0612b17..e0bcbba 100644
|
||||
--- a/dlls/wined3d/wined3d_private.h
|
||||
+++ b/dlls/wined3d/wined3d_private.h
|
||||
@@ -2391,7 +2391,6 @@ HRESULT surface_color_fill(struct wined3d_surface *s,
|
||||
@@ -2429,7 +2429,6 @@ HRESULT surface_color_fill(struct wined3d_surface *s,
|
||||
GLenum surface_get_gl_buffer(const struct wined3d_surface *surface) DECLSPEC_HIDDEN;
|
||||
void surface_get_drawable_size(const struct wined3d_surface *surface, const struct wined3d_context *context,
|
||||
unsigned int *width, unsigned int *height) DECLSPEC_HIDDEN;
|
||||
@@ -314,5 +323,5 @@ index 27bba5b..19b8d31 100644
|
||||
void surface_load_ds_location(struct wined3d_surface *surface,
|
||||
struct wined3d_context *context, DWORD location) DECLSPEC_HIDDEN;
|
||||
--
|
||||
2.3.5
|
||||
2.5.0
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From d934f1879e55a8787562d4cc75ce2bd981f8b585 Mon Sep 17 00:00:00 2001
|
||||
From ba7975a0842a03691b9ab43254df9be230d25754 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Stefan=20D=C3=B6singer?= <stefan@codeweavers.com>
|
||||
Date: Sun, 17 Nov 2013 20:33:17 +0100
|
||||
Subject: wined3d: Replace surface_load_location with resource_load_location.
|
||||
@@ -6,19 +6,19 @@ Subject: wined3d: Replace surface_load_location with resource_load_location.
|
||||
FIXME: Check if this patch is complete enough to make sense.
|
||||
---
|
||||
dlls/wined3d/context.c | 2 +-
|
||||
dlls/wined3d/device.c | 2 +-
|
||||
dlls/wined3d/device.c | 4 +-
|
||||
dlls/wined3d/drawprim.c | 2 +-
|
||||
dlls/wined3d/surface.c | 111 +++++++++++++----------------------------
|
||||
dlls/wined3d/swapchain.c | 8 +--
|
||||
dlls/wined3d/texture.c | 2 +-
|
||||
dlls/wined3d/wined3d_private.h | 2 -
|
||||
7 files changed, 43 insertions(+), 86 deletions(-)
|
||||
7 files changed, 44 insertions(+), 87 deletions(-)
|
||||
|
||||
diff --git a/dlls/wined3d/context.c b/dlls/wined3d/context.c
|
||||
index 167ea7d..5644ea0 100644
|
||||
index 4752fff..5f70ce5 100644
|
||||
--- a/dlls/wined3d/context.c
|
||||
+++ b/dlls/wined3d/context.c
|
||||
@@ -2224,7 +2224,7 @@ static void context_validate_onscreen_formats(struct wined3d_context *context,
|
||||
@@ -2279,7 +2279,7 @@ static void context_validate_onscreen_formats(struct wined3d_context *context,
|
||||
WARN("Depth stencil format is not supported by WGL, rendering the backbuffer in an FBO\n");
|
||||
|
||||
/* The currently active context is the necessary context to access the swapchain's onscreen buffers */
|
||||
@@ -28,7 +28,7 @@ index 167ea7d..5644ea0 100644
|
||||
swapchain_update_draw_bindings(swapchain);
|
||||
context_set_render_offscreen(context, TRUE);
|
||||
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
|
||||
index 1874a2b..ab874de 100644
|
||||
index a127f9d..1da2df4 100644
|
||||
--- a/dlls/wined3d/device.c
|
||||
+++ b/dlls/wined3d/device.c
|
||||
@@ -323,7 +323,7 @@ void device_clear_render_targets(struct wined3d_device *device, UINT rt_count, c
|
||||
@@ -40,8 +40,17 @@ index 1874a2b..ab874de 100644
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4049,7 +4049,7 @@ void CDECL wined3d_device_update_sub_resource(struct wined3d_device *device, str
|
||||
&& src_rect.bottom == sub_resource->height)
|
||||
wined3d_texture_prepare_texture(texture, context, FALSE);
|
||||
else
|
||||
- surface_load_location(surface, context, WINED3D_LOCATION_TEXTURE_RGB);
|
||||
+ wined3d_resource_load_location(&surface->resource, context, WINED3D_LOCATION_TEXTURE_RGB);
|
||||
wined3d_texture_bind_and_dirtify(texture, context, FALSE);
|
||||
|
||||
wined3d_surface_upload_data(surface, gl_info, resource->format,
|
||||
diff --git a/dlls/wined3d/drawprim.c b/dlls/wined3d/drawprim.c
|
||||
index 6f226ce..f2c2f42 100644
|
||||
index 8a27363..bafe7dd 100644
|
||||
--- a/dlls/wined3d/drawprim.c
|
||||
+++ b/dlls/wined3d/drawprim.c
|
||||
@@ -628,7 +628,7 @@ void draw_primitive(struct wined3d_device *device, UINT start_idx, UINT index_co
|
||||
@@ -54,10 +63,10 @@ index 6f226ce..f2c2f42 100644
|
||||
}
|
||||
}
|
||||
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
|
||||
index 1fcbc98..f7171df 100644
|
||||
index 9a37dcd..4e8cf9b 100644
|
||||
--- a/dlls/wined3d/surface.c
|
||||
+++ b/dlls/wined3d/surface.c
|
||||
@@ -758,7 +758,7 @@ static void surface_unmap(struct wined3d_surface *surface)
|
||||
@@ -759,7 +759,7 @@ static void surface_unmap(struct wined3d_surface *surface)
|
||||
|
||||
if (device->d3d_initialized)
|
||||
context = context_acquire(device, surface);
|
||||
@@ -66,7 +75,7 @@ index 1fcbc98..f7171df 100644
|
||||
if (context)
|
||||
context_release(context);
|
||||
}
|
||||
@@ -824,9 +824,9 @@ static void surface_depth_blt_fbo(const struct wined3d_device *device,
|
||||
@@ -825,9 +825,9 @@ static void surface_depth_blt_fbo(const struct wined3d_device *device,
|
||||
|
||||
/* Make sure the locations are up-to-date. Loading the destination
|
||||
* surface isn't required if the entire surface is overwritten. */
|
||||
@@ -78,7 +87,7 @@ index 1fcbc98..f7171df 100644
|
||||
|
||||
gl_info = context->gl_info;
|
||||
|
||||
@@ -915,9 +915,9 @@ static void surface_blt_fbo(const struct wined3d_device *device,
|
||||
@@ -916,9 +916,9 @@ static void surface_blt_fbo(const struct wined3d_device *device,
|
||||
* surface isn't required if the entire surface is overwritten. (And is
|
||||
* in fact harmful if we're being called by surface_load_location() with
|
||||
* the purpose of loading the destination surface.) */
|
||||
@@ -90,7 +99,7 @@ index 1fcbc98..f7171df 100644
|
||||
|
||||
if (src_location == WINED3D_LOCATION_DRAWABLE) required_rt = src_surface;
|
||||
else if (dst_location == WINED3D_LOCATION_DRAWABLE) required_rt = dst_surface;
|
||||
@@ -1179,7 +1179,7 @@ static void surface_unload(struct wined3d_resource *resource)
|
||||
@@ -1182,7 +1182,7 @@ static void surface_unload(struct wined3d_resource *resource)
|
||||
else
|
||||
{
|
||||
surface_prepare_map_memory(surface);
|
||||
@@ -99,7 +108,7 @@ index 1fcbc98..f7171df 100644
|
||||
wined3d_resource_invalidate_location(&surface->resource, ~surface->resource.map_binding);
|
||||
}
|
||||
|
||||
@@ -1224,22 +1224,6 @@ static void wined3d_surface_location_invalidated(struct wined3d_resource *resour
|
||||
@@ -1227,22 +1227,6 @@ static void wined3d_surface_location_invalidated(struct wined3d_resource *resour
|
||||
wined3d_texture_set_dirty(surface->container);
|
||||
}
|
||||
|
||||
@@ -122,7 +131,7 @@ index 1fcbc98..f7171df 100644
|
||||
static const struct wined3d_surface_ops surface_ops =
|
||||
{
|
||||
surface_private_setup,
|
||||
@@ -1683,7 +1667,7 @@ HRESULT surface_upload_from_surface(struct wined3d_surface *dst_surface, const P
|
||||
@@ -1689,7 +1673,7 @@ HRESULT surface_upload_from_surface(struct wined3d_surface *dst_surface, const P
|
||||
if (update_w == dst_w && update_h == dst_h)
|
||||
wined3d_texture_prepare_texture(dst_surface->container, context, FALSE);
|
||||
else
|
||||
@@ -131,7 +140,7 @@ index 1fcbc98..f7171df 100644
|
||||
wined3d_texture_bind_and_dirtify(dst_surface->container, context, FALSE);
|
||||
|
||||
surface_get_memory(src_surface, &data, src_surface->resource.locations);
|
||||
@@ -1816,7 +1800,7 @@ void surface_load(struct wined3d_surface *surface, struct wined3d_context *conte
|
||||
@@ -1822,7 +1806,7 @@ void surface_load(struct wined3d_surface *surface, struct wined3d_context *conte
|
||||
}
|
||||
TRACE("Reloading because surface is dirty.\n");
|
||||
|
||||
@@ -140,7 +149,7 @@ index 1fcbc98..f7171df 100644
|
||||
surface_evict_sysmem(surface);
|
||||
}
|
||||
|
||||
@@ -2749,7 +2733,7 @@ HRESULT CDECL wined3d_surface_map(struct wined3d_surface *surface,
|
||||
@@ -2743,7 +2727,7 @@ HRESULT CDECL wined3d_surface_map(struct wined3d_surface *surface,
|
||||
|
||||
if (surface->resource.device->d3d_initialized)
|
||||
context = context_acquire(surface->resource.device, NULL);
|
||||
@@ -149,7 +158,7 @@ index 1fcbc98..f7171df 100644
|
||||
if (context)
|
||||
context_release(context);
|
||||
}
|
||||
@@ -2854,7 +2838,7 @@ HRESULT CDECL wined3d_surface_getdc(struct wined3d_surface *surface, HDC *dc)
|
||||
@@ -2848,7 +2832,7 @@ HRESULT CDECL wined3d_surface_getdc(struct wined3d_surface *surface, HDC *dc)
|
||||
{
|
||||
if (surface->flags & SFLAG_CLIENT)
|
||||
{
|
||||
@@ -158,7 +167,7 @@ index 1fcbc98..f7171df 100644
|
||||
surface_release_client_storage(surface);
|
||||
}
|
||||
hr = surface_create_dib_section(surface);
|
||||
@@ -2870,7 +2854,7 @@ HRESULT CDECL wined3d_surface_getdc(struct wined3d_surface *surface, HDC *dc)
|
||||
@@ -2864,7 +2848,7 @@ HRESULT CDECL wined3d_surface_getdc(struct wined3d_surface *surface, HDC *dc)
|
||||
surface->resource.map_binding = WINED3D_LOCATION_DIB;
|
||||
}
|
||||
|
||||
@@ -167,7 +176,7 @@ index 1fcbc98..f7171df 100644
|
||||
wined3d_resource_invalidate_location(&surface->resource, ~WINED3D_LOCATION_DIB);
|
||||
|
||||
if (context)
|
||||
@@ -2919,7 +2903,7 @@ HRESULT CDECL wined3d_surface_releasedc(struct wined3d_surface *surface, HDC dc)
|
||||
@@ -2913,7 +2897,7 @@ HRESULT CDECL wined3d_surface_releasedc(struct wined3d_surface *surface, HDC dc)
|
||||
if (device->d3d_initialized)
|
||||
context = context_acquire(device, NULL);
|
||||
|
||||
@@ -176,7 +185,7 @@ index 1fcbc98..f7171df 100644
|
||||
wined3d_resource_invalidate_location(&surface->resource, WINED3D_LOCATION_DIB);
|
||||
if (context)
|
||||
context_release(context);
|
||||
@@ -3634,8 +3618,8 @@ static void surface_blt_to_drawable(const struct wined3d_device *device,
|
||||
@@ -3628,8 +3612,8 @@ static void surface_blt_to_drawable(const struct wined3d_device *device,
|
||||
gl_info = context->gl_info;
|
||||
|
||||
/* Make sure the surface is up-to-date. This should probably use
|
||||
@@ -187,7 +196,7 @@ index 1fcbc98..f7171df 100644
|
||||
wined3d_texture_load(src_surface->container, context, FALSE);
|
||||
|
||||
/* Activate the destination context, set it up for blitting */
|
||||
@@ -4073,29 +4057,6 @@ void surface_load_ds_location(struct wined3d_surface *surface, struct wined3d_co
|
||||
@@ -4070,29 +4054,6 @@ void surface_load_ds_location(struct wined3d_surface *surface, struct wined3d_co
|
||||
surface->ds_current_size.cy = surface->resource.height;
|
||||
}
|
||||
|
||||
@@ -217,7 +226,7 @@ index 1fcbc98..f7171df 100644
|
||||
static void surface_copy_simple_location(struct wined3d_surface *surface, DWORD location)
|
||||
{
|
||||
struct wined3d_device *device = surface->resource.device;
|
||||
@@ -4145,7 +4106,7 @@ static void surface_load_sysmem(struct wined3d_surface *surface,
|
||||
@@ -4142,7 +4103,7 @@ static void surface_load_sysmem(struct wined3d_surface *surface,
|
||||
}
|
||||
|
||||
if (surface->resource.locations & (WINED3D_LOCATION_RB_MULTISAMPLE | WINED3D_LOCATION_RB_RESOLVED))
|
||||
@@ -226,7 +235,7 @@ index 1fcbc98..f7171df 100644
|
||||
|
||||
/* Download the surface to system memory. */
|
||||
if (surface->resource.locations & (WINED3D_LOCATION_TEXTURE_RGB | WINED3D_LOCATION_TEXTURE_SRGB))
|
||||
@@ -4181,7 +4142,7 @@ static HRESULT surface_load_drawable(struct wined3d_surface *surface,
|
||||
@@ -4178,7 +4139,7 @@ static HRESULT surface_load_drawable(struct wined3d_surface *surface,
|
||||
}
|
||||
|
||||
surface_get_rect(surface, NULL, &r);
|
||||
@@ -235,7 +244,7 @@ index 1fcbc98..f7171df 100644
|
||||
surface_blt_to_drawable(surface->resource.device, context,
|
||||
WINED3D_TEXF_POINT, FALSE, surface, &r, surface, &r);
|
||||
|
||||
@@ -4254,7 +4215,7 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
@@ -4251,7 +4212,7 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
/* Performance warning... */
|
||||
FIXME("Downloading RGB surface %p to reload it as sRGB.\n", surface);
|
||||
surface_prepare_map_memory(surface);
|
||||
@@ -244,7 +253,7 @@ index 1fcbc98..f7171df 100644
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -4265,7 +4226,7 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
@@ -4262,7 +4223,7 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
/* Performance warning... */
|
||||
FIXME("Downloading sRGB surface %p to reload it as RGB.\n", surface);
|
||||
surface_prepare_map_memory(surface);
|
||||
@@ -253,7 +262,7 @@ index 1fcbc98..f7171df 100644
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4274,7 +4235,7 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
@@ -4271,7 +4232,7 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
WARN("Trying to load a texture from sysmem, but no simple location is valid.\n");
|
||||
/* Lets hope we get it from somewhere... */
|
||||
surface_prepare_system_memory(surface);
|
||||
@@ -262,7 +271,7 @@ index 1fcbc98..f7171df 100644
|
||||
}
|
||||
|
||||
wined3d_texture_prepare_texture(texture, context, srgb);
|
||||
@@ -4300,7 +4261,7 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
@@ -4297,7 +4258,7 @@ static HRESULT surface_load_texture(struct wined3d_surface *surface,
|
||||
surface->resource.map_binding = WINED3D_LOCATION_SYSMEM;
|
||||
|
||||
surface_prepare_map_memory(surface);
|
||||
@@ -271,7 +280,7 @@ index 1fcbc98..f7171df 100644
|
||||
surface_remove_pbo(surface, gl_info);
|
||||
}
|
||||
|
||||
@@ -4368,9 +4329,11 @@ static void surface_multisample_resolve(struct wined3d_surface *surface, struct
|
||||
@@ -4365,9 +4326,11 @@ static void surface_multisample_resolve(struct wined3d_surface *surface, struct
|
||||
surface, WINED3D_LOCATION_RB_MULTISAMPLE, &rect, surface, WINED3D_LOCATION_RB_RESOLVED, &rect);
|
||||
}
|
||||
|
||||
@@ -285,7 +294,7 @@ index 1fcbc98..f7171df 100644
|
||||
HRESULT hr;
|
||||
|
||||
TRACE("surface %p, location %s.\n", surface, wined3d_debug_location(location));
|
||||
@@ -4397,20 +4360,6 @@ void surface_load_location(struct wined3d_surface *surface, struct wined3d_conte
|
||||
@@ -4394,20 +4357,6 @@ void surface_load_location(struct wined3d_surface *surface, struct wined3d_conte
|
||||
}
|
||||
}
|
||||
|
||||
@@ -306,7 +315,7 @@ index 1fcbc98..f7171df 100644
|
||||
if (!surface->resource.locations)
|
||||
{
|
||||
ERR("Surface %p does not have any up to date location.\n", surface);
|
||||
@@ -5552,7 +5501,8 @@ HRESULT CDECL wined3d_surface_blt(struct wined3d_surface *dst_surface, const REC
|
||||
@@ -5555,7 +5504,8 @@ HRESULT CDECL wined3d_surface_blt(struct wined3d_surface *dst_surface, const REC
|
||||
if (!wined3d_resource_is_offscreen(&dst_surface->container->resource))
|
||||
{
|
||||
struct wined3d_context *context = context_acquire(device, dst_surface);
|
||||
@@ -316,7 +325,7 @@ index 1fcbc98..f7171df 100644
|
||||
context_release(context);
|
||||
}
|
||||
return WINED3D_OK;
|
||||
@@ -5625,6 +5575,15 @@ cpu:
|
||||
@@ -5628,6 +5578,15 @@ cpu:
|
||||
return surface_cpu_blt(dst_surface, &dst_rect, src_surface, &src_rect, flags, fx, filter);
|
||||
}
|
||||
|
||||
@@ -333,7 +342,7 @@ index 1fcbc98..f7171df 100644
|
||||
const struct wined3d_resource_desc *desc, GLenum target, unsigned int level, unsigned int layer, DWORD flags)
|
||||
{
|
||||
diff --git a/dlls/wined3d/swapchain.c b/dlls/wined3d/swapchain.c
|
||||
index 6864a4a..15f7708 100644
|
||||
index 5fd09de..9ae610d 100644
|
||||
--- a/dlls/wined3d/swapchain.c
|
||||
+++ b/dlls/wined3d/swapchain.c
|
||||
@@ -309,7 +309,7 @@ static void swapchain_blit(const struct wined3d_swapchain *swapchain,
|
||||
@@ -372,10 +381,10 @@ index 6864a4a..15f7708 100644
|
||||
src_dc = front->hDC;
|
||||
window = swapchain->win_handle;
|
||||
diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c
|
||||
index 0c64f39..9eb8da1 100644
|
||||
index 813984a..561f9e6 100644
|
||||
--- a/dlls/wined3d/texture.c
|
||||
+++ b/dlls/wined3d/texture.c
|
||||
@@ -777,7 +777,7 @@ static void texture2d_sub_resource_add_dirty_region(struct wined3d_resource *sub
|
||||
@@ -779,7 +779,7 @@ static void texture2d_sub_resource_add_dirty_region(struct wined3d_resource *sub
|
||||
|
||||
surface_prepare_map_memory(surface);
|
||||
context = context_acquire(surface->resource.device, NULL);
|
||||
@@ -385,10 +394,10 @@ index 0c64f39..9eb8da1 100644
|
||||
wined3d_resource_invalidate_location(&surface->resource, ~surface->resource.map_binding);
|
||||
}
|
||||
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
|
||||
index 8e51f16..b8dbde3 100644
|
||||
index dd4c07f..b68ebbe 100644
|
||||
--- a/dlls/wined3d/wined3d_private.h
|
||||
+++ b/dlls/wined3d/wined3d_private.h
|
||||
@@ -2391,8 +2391,6 @@ void surface_load(struct wined3d_surface *surface, struct wined3d_context *conte
|
||||
@@ -2436,8 +2436,6 @@ void surface_load(struct wined3d_surface *surface, struct wined3d_context *conte
|
||||
void surface_load_ds_location(struct wined3d_surface *surface,
|
||||
struct wined3d_context *context, DWORD location) DECLSPEC_HIDDEN;
|
||||
void surface_load_fb_texture(struct wined3d_surface *surface, BOOL srgb) DECLSPEC_HIDDEN;
|
||||
@@ -398,5 +407,5 @@ index 8e51f16..b8dbde3 100644
|
||||
void surface_prepare_rb(struct wined3d_surface *surface,
|
||||
const struct wined3d_gl_info *gl_info, BOOL multisample) DECLSPEC_HIDDEN;
|
||||
--
|
||||
2.3.5
|
||||
2.5.0
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 99ec63d5b866c832fd8dce4b249a338dd80a505e Mon Sep 17 00:00:00 2001
|
||||
From b21f804efaddc89cdce137a0bba20c1d92f09279 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Stefan=20D=C3=B6singer?= <stefan@codeweavers.com>
|
||||
Date: Thu, 20 Dec 2012 13:09:17 +0100
|
||||
Subject: wined3d: Move the framebuffer into wined3d_state
|
||||
@@ -20,7 +20,7 @@ Subject: wined3d: Move the framebuffer into wined3d_state
|
||||
13 files changed, 172 insertions(+), 127 deletions(-)
|
||||
|
||||
diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c
|
||||
index eb46f8c..34e210a 100644
|
||||
index 71c7c2e..51fe69f 100644
|
||||
--- a/dlls/wined3d/arb_program_shader.c
|
||||
+++ b/dlls/wined3d/arb_program_shader.c
|
||||
@@ -684,7 +684,7 @@ static void shader_arb_load_constants_internal(struct shader_arb_priv *priv,
|
||||
@@ -42,10 +42,10 @@ index eb46f8c..34e210a 100644
|
||||
}
|
||||
|
||||
diff --git a/dlls/wined3d/context.c b/dlls/wined3d/context.c
|
||||
index fb065cd..42a221c 100644
|
||||
index 5f70ce5..1be568c 100644
|
||||
--- a/dlls/wined3d/context.c
|
||||
+++ b/dlls/wined3d/context.c
|
||||
@@ -1475,6 +1475,12 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
|
||||
@@ -1509,6 +1509,12 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
|
||||
goto out;
|
||||
}
|
||||
|
||||
@@ -58,7 +58,7 @@ index fb065cd..42a221c 100644
|
||||
/* Initialize the texture unit mapping to a 1:1 mapping */
|
||||
for (s = 0; s < MAX_COMBINED_SAMPLERS; ++s)
|
||||
{
|
||||
@@ -1793,6 +1799,7 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
|
||||
@@ -1822,6 +1828,7 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
|
||||
out:
|
||||
device->shader_backend->shader_free_context_data(ret);
|
||||
device->adapter->fragment_pipe->free_context_data(ret);
|
||||
@@ -66,7 +66,7 @@ index fb065cd..42a221c 100644
|
||||
HeapFree(GetProcessHeap(), 0, ret->free_event_queries);
|
||||
HeapFree(GetProcessHeap(), 0, ret->free_occlusion_queries);
|
||||
HeapFree(GetProcessHeap(), 0, ret->free_timestamp_queries);
|
||||
@@ -1827,6 +1834,7 @@ void context_destroy(struct wined3d_device *device, struct wined3d_context *cont
|
||||
@@ -1856,6 +1863,7 @@ void context_destroy(struct wined3d_device *device, struct wined3d_context *cont
|
||||
|
||||
device->shader_backend->shader_free_context_data(context);
|
||||
device->adapter->fragment_pipe->free_context_data(context);
|
||||
@@ -74,7 +74,7 @@ index fb065cd..42a221c 100644
|
||||
HeapFree(GetProcessHeap(), 0, context->draw_buffers);
|
||||
HeapFree(GetProcessHeap(), 0, context->blit_targets);
|
||||
device_context_remove(device, context);
|
||||
@@ -2342,7 +2350,7 @@ BOOL context_apply_clear_state(struct wined3d_context *context, const struct win
|
||||
@@ -2371,7 +2379,7 @@ BOOL context_apply_clear_state(struct wined3d_context *context, const struct win
|
||||
DWORD rt_mask = 0, *cur_mask;
|
||||
UINT i;
|
||||
|
||||
@@ -83,7 +83,7 @@ index fb065cd..42a221c 100644
|
||||
|| rt_count != context->gl_info->limits.buffers)
|
||||
{
|
||||
if (!context_validate_rt_config(rt_count, rts, dsv))
|
||||
@@ -2387,6 +2395,8 @@ BOOL context_apply_clear_state(struct wined3d_context *context, const struct win
|
||||
@@ -2416,6 +2424,8 @@ BOOL context_apply_clear_state(struct wined3d_context *context, const struct win
|
||||
rt_mask = context_generate_rt_mask_no_fbo(device,
|
||||
rt_count ? wined3d_rendertarget_view_get_surface(rts[0]) : NULL);
|
||||
}
|
||||
@@ -92,7 +92,7 @@ index fb065cd..42a221c 100644
|
||||
}
|
||||
else if (wined3d_settings.offscreen_rendering_mode == ORM_FBO
|
||||
&& (!rt_count || wined3d_resource_is_offscreen(rts[0]->resource)))
|
||||
@@ -2437,7 +2447,7 @@ BOOL context_apply_clear_state(struct wined3d_context *context, const struct win
|
||||
@@ -2466,7 +2476,7 @@ BOOL context_apply_clear_state(struct wined3d_context *context, const struct win
|
||||
static DWORD find_draw_buffers_mask(const struct wined3d_context *context, const struct wined3d_device *device)
|
||||
{
|
||||
const struct wined3d_state *state = &device->state;
|
||||
@@ -101,7 +101,7 @@ index fb065cd..42a221c 100644
|
||||
struct wined3d_shader *ps = state->shader[WINED3D_SHADER_TYPE_PIXEL];
|
||||
DWORD rt_mask, rt_mask_bits;
|
||||
unsigned int i;
|
||||
@@ -2467,7 +2477,7 @@ static DWORD find_draw_buffers_mask(const struct wined3d_context *context, const
|
||||
@@ -2496,7 +2506,7 @@ static DWORD find_draw_buffers_mask(const struct wined3d_context *context, const
|
||||
void context_state_fb(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id)
|
||||
{
|
||||
const struct wined3d_device *device = context->swapchain->device;
|
||||
@@ -110,7 +110,7 @@ index fb065cd..42a221c 100644
|
||||
DWORD rt_mask = find_draw_buffers_mask(context, device);
|
||||
DWORD *cur_mask;
|
||||
|
||||
@@ -2499,6 +2509,8 @@ void context_state_fb(struct wined3d_context *context, const struct wined3d_stat
|
||||
@@ -2528,6 +2538,8 @@ void context_state_fb(struct wined3d_context *context, const struct wined3d_stat
|
||||
context_apply_draw_buffers(context, rt_mask);
|
||||
*cur_mask = rt_mask;
|
||||
}
|
||||
@@ -119,17 +119,17 @@ index fb065cd..42a221c 100644
|
||||
}
|
||||
|
||||
static void context_map_stage(struct wined3d_context *context, DWORD stage, DWORD unit)
|
||||
@@ -3087,7 +3099,7 @@ BOOL context_apply_draw_state(struct wined3d_context *context, struct wined3d_de
|
||||
@@ -3152,7 +3164,7 @@ BOOL context_apply_draw_state(struct wined3d_context *context, struct wined3d_de
|
||||
{
|
||||
const struct wined3d_state *state = &device->state;
|
||||
const struct StateEntry *state_table = context->state_table;
|
||||
- const struct wined3d_fb_state *fb = state->fb;
|
||||
+ const struct wined3d_fb_state *fb = &state->fb;
|
||||
unsigned int i, j;
|
||||
unsigned int i;
|
||||
WORD map;
|
||||
|
||||
diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c
|
||||
index 874129a..22a2de8 100644
|
||||
index 459fd56..a07cc6c 100644
|
||||
--- a/dlls/wined3d/cs.c
|
||||
+++ b/dlls/wined3d/cs.c
|
||||
@@ -290,7 +290,7 @@ static void wined3d_cs_exec_clear(struct wined3d_cs *cs, const void *data)
|
||||
@@ -168,7 +168,7 @@ index 874129a..22a2de8 100644
|
||||
|
||||
if (!prev != !op->view)
|
||||
{
|
||||
@@ -1004,7 +1004,7 @@ static void wined3d_cs_exec_reset_state(struct wined3d_cs *cs, const void *data)
|
||||
@@ -1005,7 +1005,7 @@ static void wined3d_cs_exec_reset_state(struct wined3d_cs *cs, const void *data)
|
||||
|
||||
state_cleanup(&cs->state);
|
||||
memset(&cs->state, 0, sizeof(cs->state));
|
||||
@@ -177,7 +177,7 @@ index 874129a..22a2de8 100644
|
||||
WINED3D_STATE_NO_REF | WINED3D_STATE_INIT_DEFAULT)))
|
||||
ERR("Failed to initialize CS state, hr %#x.\n", hr);
|
||||
}
|
||||
@@ -1087,17 +1087,9 @@ struct wined3d_cs *wined3d_cs_create(struct wined3d_device *device)
|
||||
@@ -1088,17 +1088,9 @@ struct wined3d_cs *wined3d_cs_create(struct wined3d_device *device)
|
||||
if (!(cs = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*cs))))
|
||||
return NULL;
|
||||
|
||||
@@ -196,7 +196,7 @@ index 874129a..22a2de8 100644
|
||||
HeapFree(GetProcessHeap(), 0, cs);
|
||||
return NULL;
|
||||
}
|
||||
@@ -1118,7 +1110,6 @@ struct wined3d_cs *wined3d_cs_create(struct wined3d_device *device)
|
||||
@@ -1119,7 +1111,6 @@ struct wined3d_cs *wined3d_cs_create(struct wined3d_device *device)
|
||||
void wined3d_cs_destroy(struct wined3d_cs *cs)
|
||||
{
|
||||
state_cleanup(&cs->state);
|
||||
@@ -205,7 +205,7 @@ index 874129a..22a2de8 100644
|
||||
HeapFree(GetProcessHeap(), 0, cs);
|
||||
}
|
||||
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
|
||||
index a13fb54..990545d 100644
|
||||
index 1da2df4..5200f3e 100644
|
||||
--- a/dlls/wined3d/device.c
|
||||
+++ b/dlls/wined3d/device.c
|
||||
@@ -860,7 +860,7 @@ static void device_init_swapchain_state(struct wined3d_device *device, struct wi
|
||||
@@ -317,7 +317,7 @@ index a13fb54..990545d 100644
|
||||
device->d3d_initialized = FALSE;
|
||||
|
||||
return WINED3D_OK;
|
||||
@@ -1939,7 +1917,7 @@ static void resolve_depth_buffer(struct wined3d_state *state)
|
||||
@@ -1938,7 +1916,7 @@ static void resolve_depth_buffer(struct wined3d_state *state)
|
||||
|| !(texture->resource.format_flags & WINED3DFMT_FLAG_DEPTH))
|
||||
return;
|
||||
surface = surface_from_resource(texture->sub_resources[0]);
|
||||
@@ -326,7 +326,7 @@ index a13fb54..990545d 100644
|
||||
return;
|
||||
|
||||
wined3d_surface_blt(surface, NULL, depth_stencil, NULL, 0, NULL, WINED3D_TEXF_POINT);
|
||||
@@ -3328,6 +3306,8 @@ HRESULT CDECL wined3d_device_present(const struct wined3d_device *device, const
|
||||
@@ -3327,6 +3305,8 @@ HRESULT CDECL wined3d_device_present(const struct wined3d_device *device, const
|
||||
HRESULT CDECL wined3d_device_clear(struct wined3d_device *device, DWORD rect_count,
|
||||
const RECT *rects, DWORD flags, const struct wined3d_color *color, float depth, DWORD stencil)
|
||||
{
|
||||
@@ -335,7 +335,7 @@ index a13fb54..990545d 100644
|
||||
TRACE("device %p, rect_count %u, rects %p, flags %#x, color {%.8e, %.8e, %.8e, %.8e}, depth %.8e, stencil %u.\n",
|
||||
device, rect_count, rects, flags, color->r, color->g, color->b, color->a, depth, stencil);
|
||||
|
||||
@@ -3339,7 +3319,7 @@ HRESULT CDECL wined3d_device_clear(struct wined3d_device *device, DWORD rect_cou
|
||||
@@ -3338,7 +3318,7 @@ HRESULT CDECL wined3d_device_clear(struct wined3d_device *device, DWORD rect_cou
|
||||
|
||||
if (flags & (WINED3DCLEAR_ZBUFFER | WINED3DCLEAR_STENCIL))
|
||||
{
|
||||
@@ -344,7 +344,7 @@ index a13fb54..990545d 100644
|
||||
if (!ds)
|
||||
{
|
||||
WARN("Clearing depth and/or stencil without a depth stencil buffer attached, returning WINED3DERR_INVALIDCALL\n");
|
||||
@@ -3348,8 +3328,8 @@ HRESULT CDECL wined3d_device_clear(struct wined3d_device *device, DWORD rect_cou
|
||||
@@ -3347,8 +3327,8 @@ HRESULT CDECL wined3d_device_clear(struct wined3d_device *device, DWORD rect_cou
|
||||
}
|
||||
else if (flags & WINED3DCLEAR_TARGET)
|
||||
{
|
||||
@@ -355,7 +355,7 @@ index a13fb54..990545d 100644
|
||||
{
|
||||
WARN("Silently ignoring depth and target clear with mismatching sizes\n");
|
||||
return WINED3D_OK;
|
||||
@@ -3725,8 +3705,8 @@ HRESULT CDECL wined3d_device_validate_device(const struct wined3d_device *device
|
||||
@@ -3724,8 +3704,8 @@ HRESULT CDECL wined3d_device_validate_device(const struct wined3d_device *device
|
||||
if (state->render_states[WINED3D_RS_ZENABLE] || state->render_states[WINED3D_RS_ZWRITEENABLE]
|
||||
|| state->render_states[WINED3D_RS_STENCILENABLE])
|
||||
{
|
||||
@@ -366,7 +366,7 @@ index a13fb54..990545d 100644
|
||||
|
||||
if (ds && rt && (ds->width < rt->width || ds->height < rt->height))
|
||||
{
|
||||
@@ -3952,20 +3932,21 @@ struct wined3d_rendertarget_view * CDECL wined3d_device_get_rendertarget_view(co
|
||||
@@ -4105,20 +4085,21 @@ struct wined3d_rendertarget_view * CDECL wined3d_device_get_rendertarget_view(co
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -390,7 +390,7 @@ index a13fb54..990545d 100644
|
||||
|
||||
TRACE("device %p, view_idx %u, view %p, set_viewport %#x.\n",
|
||||
device, view_idx, view, set_viewport);
|
||||
@@ -4005,13 +3986,13 @@ HRESULT CDECL wined3d_device_set_rendertarget_view(struct wined3d_device *device
|
||||
@@ -4158,13 +4139,13 @@ HRESULT CDECL wined3d_device_set_rendertarget_view(struct wined3d_device *device
|
||||
}
|
||||
|
||||
|
||||
@@ -406,7 +406,7 @@ index a13fb54..990545d 100644
|
||||
wined3d_cs_emit_set_rendertarget_view(device->cs, view_idx, view);
|
||||
/* Release after the assignment, to prevent device_resource_released()
|
||||
* from seeing the surface as still in use. */
|
||||
@@ -4023,18 +4004,19 @@ HRESULT CDECL wined3d_device_set_rendertarget_view(struct wined3d_device *device
|
||||
@@ -4176,18 +4157,19 @@ HRESULT CDECL wined3d_device_set_rendertarget_view(struct wined3d_device *device
|
||||
|
||||
void CDECL wined3d_device_set_depth_stencil_view(struct wined3d_device *device, struct wined3d_rendertarget_view *view)
|
||||
{
|
||||
@@ -428,7 +428,7 @@ index a13fb54..990545d 100644
|
||||
wined3d_rendertarget_view_incref(view);
|
||||
wined3d_cs_emit_set_depth_stencil_view(device->cs, view);
|
||||
if (prev)
|
||||
@@ -4391,10 +4373,9 @@ HRESULT CDECL wined3d_device_reset(struct wined3d_device *device,
|
||||
@@ -4540,10 +4522,9 @@ HRESULT CDECL wined3d_device_reset(struct wined3d_device *device,
|
||||
wined3d_texture_decref(device->cursor_texture);
|
||||
device->cursor_texture = NULL;
|
||||
}
|
||||
@@ -440,7 +440,7 @@ index a13fb54..990545d 100644
|
||||
{
|
||||
for (i = 0; i < device->adapter->gl_info.limits.buffers; ++i)
|
||||
{
|
||||
@@ -4403,6 +4384,11 @@ HRESULT CDECL wined3d_device_reset(struct wined3d_device *device,
|
||||
@@ -4552,6 +4533,11 @@ HRESULT CDECL wined3d_device_reset(struct wined3d_device *device,
|
||||
}
|
||||
wined3d_device_set_depth_stencil_view(device, NULL);
|
||||
|
||||
@@ -452,7 +452,7 @@ index a13fb54..990545d 100644
|
||||
if (device->onscreen_depth_stencil)
|
||||
{
|
||||
wined3d_surface_decref(device->onscreen_depth_stencil);
|
||||
@@ -4693,7 +4679,7 @@ HRESULT CDECL wined3d_device_reset(struct wined3d_device *device,
|
||||
@@ -4765,7 +4751,7 @@ HRESULT CDECL wined3d_device_reset(struct wined3d_device *device,
|
||||
if (device->d3d_initialized)
|
||||
delete_opengl_contexts(device, swapchain);
|
||||
|
||||
@@ -461,7 +461,7 @@ index a13fb54..990545d 100644
|
||||
&device->adapter->d3d_info, WINED3D_STATE_INIT_DEFAULT)))
|
||||
ERR("Failed to initialize device state, hr %#x.\n", hr);
|
||||
device->update_state = &device->state;
|
||||
@@ -4702,22 +4688,21 @@ HRESULT CDECL wined3d_device_reset(struct wined3d_device *device,
|
||||
@@ -4774,22 +4760,21 @@ HRESULT CDECL wined3d_device_reset(struct wined3d_device *device,
|
||||
}
|
||||
else if (device->back_buffer_view)
|
||||
{
|
||||
@@ -489,7 +489,7 @@ index a13fb54..990545d 100644
|
||||
wined3d_cs_emit_set_scissor_rect(device->cs, &state->scissor_rect);
|
||||
}
|
||||
|
||||
@@ -4808,17 +4793,17 @@ void device_resource_released(struct wined3d_device *device, struct wined3d_reso
|
||||
@@ -4877,17 +4862,17 @@ void device_resource_released(struct wined3d_device *device, struct wined3d_reso
|
||||
|
||||
for (i = 0; i < device->adapter->gl_info.limits.buffers; ++i)
|
||||
{
|
||||
@@ -511,7 +511,7 @@ index a13fb54..990545d 100644
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -4981,7 +4966,7 @@ HRESULT device_init(struct wined3d_device *device, struct wined3d *wined3d,
|
||||
@@ -5050,7 +5035,7 @@ HRESULT device_init(struct wined3d_device *device, struct wined3d *wined3d,
|
||||
|
||||
device->blitter = adapter->blitter;
|
||||
|
||||
@@ -521,7 +521,7 @@ index a13fb54..990545d 100644
|
||||
{
|
||||
ERR("Failed to initialize device state, hr %#x.\n", hr);
|
||||
diff --git a/dlls/wined3d/drawprim.c b/dlls/wined3d/drawprim.c
|
||||
index f2c2f42..c6a72fc 100644
|
||||
index bafe7dd..496d66f 100644
|
||||
--- a/dlls/wined3d/drawprim.c
|
||||
+++ b/dlls/wined3d/drawprim.c
|
||||
@@ -611,7 +611,7 @@ void draw_primitive(struct wined3d_device *device, UINT start_idx, UINT index_co
|
||||
@@ -577,10 +577,10 @@ index f2c2f42..c6a72fc 100644
|
||||
|
||||
surface_modify_ds_location(ds, location, ds->ds_current_size.cx, ds->ds_current_size.cy);
|
||||
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
|
||||
index 5ba246e..4775ff9 100644
|
||||
index 7bcf102..5b19799 100644
|
||||
--- a/dlls/wined3d/glsl_shader.c
|
||||
+++ b/dlls/wined3d/glsl_shader.c
|
||||
@@ -1531,7 +1531,7 @@ static void shader_generate_glsl_declarations(const struct wined3d_context *cont
|
||||
@@ -1552,7 +1552,7 @@ static void shader_generate_glsl_declarations(const struct wined3d_context *cont
|
||||
const struct vs_compile_args *vs_args = ctx_priv->cur_vs_args;
|
||||
const struct ps_compile_args *ps_args = ctx_priv->cur_ps_args;
|
||||
const struct wined3d_gl_info *gl_info = context->gl_info;
|
||||
@@ -590,10 +590,10 @@ index 5ba246e..4775ff9 100644
|
||||
const struct wined3d_shader_lconst *lconst;
|
||||
const char *prefix;
|
||||
diff --git a/dlls/wined3d/shader.c b/dlls/wined3d/shader.c
|
||||
index 5b32528..1c401c4 100644
|
||||
index e9be51e..8cf853d 100644
|
||||
--- a/dlls/wined3d/shader.c
|
||||
+++ b/dlls/wined3d/shader.c
|
||||
@@ -2411,7 +2411,7 @@ void find_ps_compile_args(const struct wined3d_state *state, const struct wined3
|
||||
@@ -2404,7 +2404,7 @@ void find_ps_compile_args(const struct wined3d_state *state, const struct wined3
|
||||
memset(args, 0, sizeof(*args)); /* FIXME: Make sure all bits are set. */
|
||||
if (!gl_info->supported[ARB_FRAMEBUFFER_SRGB] && state->render_states[WINED3D_RS_SRGBWRITEENABLE])
|
||||
{
|
||||
@@ -603,7 +603,7 @@ index 5b32528..1c401c4 100644
|
||||
{
|
||||
static unsigned int warned = 0;
|
||||
diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
|
||||
index b7d7f92..59f9fd8 100644
|
||||
index 3225aa6..02e972c 100644
|
||||
--- a/dlls/wined3d/state.c
|
||||
+++ b/dlls/wined3d/state.c
|
||||
@@ -105,7 +105,7 @@ static void state_zenable(struct wined3d_context *context, const struct wined3d_
|
||||
@@ -653,7 +653,7 @@ index b7d7f92..59f9fd8 100644
|
||||
const struct wined3d_gl_info *gl_info = context->gl_info;
|
||||
|
||||
gl_info->gl_ops.gl.p_glStencilMask(mask);
|
||||
@@ -1644,7 +1644,7 @@ static void state_depthbias(struct wined3d_context *context, const struct wined3
|
||||
@@ -1650,7 +1650,7 @@ static void state_depthbias(struct wined3d_context *context, const struct wined3
|
||||
if (state->render_states[WINED3D_RS_SLOPESCALEDEPTHBIAS]
|
||||
|| state->render_states[WINED3D_RS_DEPTHBIAS])
|
||||
{
|
||||
@@ -662,7 +662,7 @@ index b7d7f92..59f9fd8 100644
|
||||
float scale;
|
||||
|
||||
union
|
||||
@@ -4542,7 +4542,7 @@ static void vertexdeclaration(struct wined3d_context *context, const struct wine
|
||||
@@ -4543,7 +4543,7 @@ static void vertexdeclaration(struct wined3d_context *context, const struct wine
|
||||
|
||||
static void viewport_miscpart(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id)
|
||||
{
|
||||
@@ -671,7 +671,7 @@ index b7d7f92..59f9fd8 100644
|
||||
const struct wined3d_gl_info *gl_info = context->gl_info;
|
||||
struct wined3d_viewport vp = state->viewport;
|
||||
|
||||
@@ -4720,7 +4720,7 @@ static void scissorrect(struct wined3d_context *context, const struct wined3d_st
|
||||
@@ -4721,7 +4721,7 @@ static void scissorrect(struct wined3d_context *context, const struct wined3d_st
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -680,7 +680,7 @@ index b7d7f92..59f9fd8 100644
|
||||
UINT height;
|
||||
UINT width;
|
||||
|
||||
@@ -4784,7 +4784,7 @@ static void psorigin(struct wined3d_context *context, const struct wined3d_state
|
||||
@@ -4785,7 +4785,7 @@ static void psorigin(struct wined3d_context *context, const struct wined3d_state
|
||||
|
||||
void state_srgbwrite(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id)
|
||||
{
|
||||
@@ -790,10 +790,10 @@ index 763a5f9..790d769 100644
|
||||
|
||||
if (FAILED(hr = stateblock_allocate_shader_constants(stateblock)))
|
||||
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
|
||||
index f415b56..1808153 100644
|
||||
index 07eee26..1b05f65 100644
|
||||
--- a/dlls/wined3d/surface.c
|
||||
+++ b/dlls/wined3d/surface.c
|
||||
@@ -3418,8 +3418,8 @@ static HRESULT surface_blt_special(struct wined3d_surface *dst_surface, const RE
|
||||
@@ -3405,8 +3405,8 @@ static HRESULT surface_blt_special(struct wined3d_surface *dst_surface, const RE
|
||||
enum wined3d_texture_filter_type filter)
|
||||
{
|
||||
struct wined3d_device *device = dst_surface->resource.device;
|
||||
@@ -804,7 +804,7 @@ index f415b56..1808153 100644
|
||||
TRACE("dst_surface %p, dst_rect %s, src_surface %p, src_rect %s, flags %#x, blt_fx %p, filter %s.\n",
|
||||
dst_surface, wine_dbgstr_rect(dst_rect), src_surface, wine_dbgstr_rect(src_rect),
|
||||
diff --git a/dlls/wined3d/swapchain.c b/dlls/wined3d/swapchain.c
|
||||
index 1ac5e7a..454cb21 100644
|
||||
index 5c06f89..c46227a 100644
|
||||
--- a/dlls/wined3d/swapchain.c
|
||||
+++ b/dlls/wined3d/swapchain.c
|
||||
@@ -421,7 +421,7 @@ static void swapchain_gl_present(struct wined3d_swapchain *swapchain, const RECT
|
||||
@@ -817,10 +817,10 @@ index 1ac5e7a..454cb21 100644
|
||||
struct wined3d_context *context;
|
||||
struct wined3d_surface *front;
|
||||
diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c
|
||||
index 44ba7ad..ade92b2 100644
|
||||
index 0d4e878..c763330 100644
|
||||
--- a/dlls/wined3d/utils.c
|
||||
+++ b/dlls/wined3d/utils.c
|
||||
@@ -3514,7 +3514,7 @@ void get_projection_matrix(const struct wined3d_context *context, const struct w
|
||||
@@ -3721,7 +3721,7 @@ void get_projection_matrix(const struct wined3d_context *context, const struct w
|
||||
float y_offset = context->render_offscreen
|
||||
? (center_offset - (2.0f * y) - h) / h
|
||||
: (center_offset - (2.0f * y) - h) / -h;
|
||||
@@ -829,7 +829,7 @@ index 44ba7ad..ade92b2 100644
|
||||
state->render_states[WINED3D_RS_ZENABLE] : WINED3D_ZB_FALSE;
|
||||
float z_scale = zenable ? 2.0f : 0.0f;
|
||||
float z_offset = zenable ? -1.0f : 0.0f;
|
||||
@@ -4104,7 +4104,7 @@ void gen_ffp_frag_op(const struct wined3d_context *context, const struct wined3d
|
||||
@@ -4311,7 +4311,7 @@ void gen_ffp_frag_op(const struct wined3d_context *context, const struct wined3d
|
||||
unsigned int i;
|
||||
DWORD ttff;
|
||||
DWORD cop, aop, carg0, carg1, carg2, aarg0, aarg1, aarg2;
|
||||
@@ -839,10 +839,10 @@ index 44ba7ad..ade92b2 100644
|
||||
const struct wined3d_d3d_info *d3d_info = context->d3d_info;
|
||||
|
||||
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
|
||||
index 7f9436a..a19fabe 100644
|
||||
index bf5abcf..b96b9c9 100644
|
||||
--- a/dlls/wined3d/wined3d_private.h
|
||||
+++ b/dlls/wined3d/wined3d_private.h
|
||||
@@ -1137,6 +1137,36 @@ struct wined3d_timestamp_query
|
||||
@@ -1138,6 +1138,36 @@ struct wined3d_timestamp_query
|
||||
void context_alloc_timestamp_query(struct wined3d_context *context, struct wined3d_timestamp_query *query) DECLSPEC_HIDDEN;
|
||||
void context_free_timestamp_query(struct wined3d_timestamp_query *query) DECLSPEC_HIDDEN;
|
||||
|
||||
@@ -879,7 +879,7 @@ index 7f9436a..a19fabe 100644
|
||||
struct wined3d_context
|
||||
{
|
||||
const struct wined3d_gl_info *gl_info;
|
||||
@@ -1151,6 +1181,7 @@ struct wined3d_context
|
||||
@@ -1152,6 +1182,7 @@ struct wined3d_context
|
||||
DWORD dirtyArray[STATE_HIGHEST + 1]; /* Won't get bigger than that, a state is never marked dirty 2 times */
|
||||
DWORD numDirtyEntries;
|
||||
DWORD isStateDirty[STATE_HIGHEST / (sizeof(DWORD) * CHAR_BIT) + 1]; /* Bitmap to find out quickly if a state is dirty */
|
||||
@@ -887,7 +887,7 @@ index 7f9436a..a19fabe 100644
|
||||
|
||||
struct wined3d_swapchain *swapchain;
|
||||
struct wined3d_surface *current_rt;
|
||||
@@ -1252,12 +1283,6 @@ struct wined3d_context
|
||||
@@ -1253,12 +1284,6 @@ struct wined3d_context
|
||||
GLuint dummy_arbfp_prog;
|
||||
};
|
||||
|
||||
@@ -900,7 +900,7 @@ index 7f9436a..a19fabe 100644
|
||||
typedef void (*APPLYSTATEFUNC)(struct wined3d_context *ctx, const struct wined3d_state *state, DWORD state_id);
|
||||
|
||||
struct StateEntry
|
||||
@@ -1941,7 +1966,7 @@ struct wined3d_stream_state
|
||||
@@ -1969,7 +1994,7 @@ struct wined3d_stream_state
|
||||
struct wined3d_state
|
||||
{
|
||||
DWORD flags;
|
||||
@@ -909,7 +909,7 @@ index 7f9436a..a19fabe 100644
|
||||
|
||||
struct wined3d_vertex_declaration *vertex_declaration;
|
||||
struct wined3d_stream_output stream_output[MAX_STREAM_OUT];
|
||||
@@ -2047,7 +2072,6 @@ struct wined3d_device
|
||||
@@ -2075,7 +2100,6 @@ struct wined3d_device
|
||||
struct wine_rb_tree samplers;
|
||||
|
||||
/* Render Target Support */
|
||||
@@ -917,7 +917,7 @@ index 7f9436a..a19fabe 100644
|
||||
struct wined3d_surface *onscreen_depth_stencil;
|
||||
struct wined3d_rendertarget_view *auto_depth_stencil_view;
|
||||
|
||||
@@ -2553,9 +2577,8 @@ struct wined3d_stateblock
|
||||
@@ -2583,9 +2607,8 @@ struct wined3d_stateblock
|
||||
void stateblock_init_contained_states(struct wined3d_stateblock *stateblock) DECLSPEC_HIDDEN;
|
||||
|
||||
void state_cleanup(struct wined3d_state *state) DECLSPEC_HIDDEN;
|
||||
@@ -929,7 +929,7 @@ index 7f9436a..a19fabe 100644
|
||||
void state_unbind_resources(struct wined3d_state *state) DECLSPEC_HIDDEN;
|
||||
|
||||
struct wined3d_cs_ops
|
||||
@@ -2568,7 +2591,6 @@ struct wined3d_cs
|
||||
@@ -2598,7 +2621,6 @@ struct wined3d_cs
|
||||
{
|
||||
const struct wined3d_cs_ops *ops;
|
||||
struct wined3d_device *device;
|
||||
@@ -938,5 +938,5 @@ index 7f9436a..a19fabe 100644
|
||||
|
||||
size_t data_size;
|
||||
--
|
||||
2.4.2
|
||||
2.5.0
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From ede3d178fc2a2ddde4b50913afca7920472c83c5 Mon Sep 17 00:00:00 2001
|
||||
From 628ad3187b1534791c9cecab65d8a9f958dbf3f4 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Stefan=20D=C3=B6singer?= <stefan@codeweavers.com>
|
||||
Date: Tue, 2 Apr 2013 17:25:19 +0200
|
||||
Subject: wined3d: Pass the state to draw_primitive
|
||||
@@ -15,7 +15,7 @@ Subject: wined3d: Pass the state to draw_primitive
|
||||
8 files changed, 29 insertions(+), 28 deletions(-)
|
||||
|
||||
diff --git a/dlls/wined3d/buffer.c b/dlls/wined3d/buffer.c
|
||||
index 50dbb2d..206e969 100644
|
||||
index 1f9a213..8d20f76 100644
|
||||
--- a/dlls/wined3d/buffer.c
|
||||
+++ b/dlls/wined3d/buffer.c
|
||||
@@ -423,7 +423,7 @@ static inline void fixup_d3dcolor(DWORD *dst_color)
|
||||
@@ -27,7 +27,7 @@ index 50dbb2d..206e969 100644
|
||||
* If we want that stuff to work on big endian machines too we have to consider more things
|
||||
*
|
||||
* 0xff000000: Alpha mask
|
||||
@@ -1184,11 +1184,11 @@ static HRESULT buffer_init(struct wined3d_buffer *buffer, struct wined3d_device
|
||||
@@ -1190,11 +1190,11 @@ static HRESULT buffer_init(struct wined3d_buffer *buffer, struct wined3d_device
|
||||
|
||||
dynamic_buffer_ok = gl_info->supported[APPLE_FLUSH_BUFFER_RANGE] || gl_info->supported[ARB_MAP_BUFFER_RANGE];
|
||||
|
||||
@@ -42,10 +42,10 @@ index 50dbb2d..206e969 100644
|
||||
*/
|
||||
if (!gl_info->supported[ARB_VERTEX_BUFFER_OBJECT])
|
||||
diff --git a/dlls/wined3d/context.c b/dlls/wined3d/context.c
|
||||
index 9be96dc..097e0e9 100644
|
||||
index 4d124c6..8ff8ebe 100644
|
||||
--- a/dlls/wined3d/context.c
|
||||
+++ b/dlls/wined3d/context.c
|
||||
@@ -2955,7 +2955,7 @@ static void context_update_stream_info(struct wined3d_context *context, const st
|
||||
@@ -2985,7 +2985,7 @@ static void context_update_stream_info(struct wined3d_context *context, const st
|
||||
{
|
||||
if (state->vertex_declaration->half_float_conv_needed && !stream_info->all_vbo)
|
||||
{
|
||||
@@ -54,7 +54,7 @@ index 9be96dc..097e0e9 100644
|
||||
context->use_immediate_mode_draw = TRUE;
|
||||
}
|
||||
else
|
||||
@@ -3095,9 +3095,9 @@ static void context_bind_shader_resources(struct wined3d_context *context, const
|
||||
@@ -3160,9 +3160,9 @@ static void context_bind_shader_resources(struct wined3d_context *context, const
|
||||
}
|
||||
|
||||
/* Context activation is done by the caller. */
|
||||
@@ -65,9 +65,9 @@ index 9be96dc..097e0e9 100644
|
||||
- const struct wined3d_state *state = &device->state;
|
||||
const struct StateEntry *state_table = context->state_table;
|
||||
const struct wined3d_fb_state *fb = &state->fb;
|
||||
unsigned int i, j;
|
||||
unsigned int i;
|
||||
diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c
|
||||
index 8f1a016..84007cc 100644
|
||||
index 8ab6685..7e1891f 100644
|
||||
--- a/dlls/wined3d/cs.c
|
||||
+++ b/dlls/wined3d/cs.c
|
||||
@@ -492,7 +492,7 @@ static UINT wined3d_cs_exec_draw(struct wined3d_cs *cs, const void *data)
|
||||
@@ -80,10 +80,10 @@ index 8f1a016..84007cc 100644
|
||||
|
||||
return sizeof(*op);
|
||||
diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c
|
||||
index f238fc0..abc4aee 100644
|
||||
index 8e4448d..ff10b64 100644
|
||||
--- a/dlls/wined3d/directx.c
|
||||
+++ b/dlls/wined3d/directx.c
|
||||
@@ -5329,7 +5329,7 @@ static void WINE_GLAPI invalid_texcoord_func(GLenum unit, const void *data)
|
||||
@@ -5487,7 +5487,7 @@ static void WINE_GLAPI invalid_texcoord_func(GLenum unit, const void *data)
|
||||
}
|
||||
|
||||
/* Helper functions for providing vertex data to opengl. The arrays are initialized based on
|
||||
@@ -198,7 +198,7 @@ index b10bc45..529bcd6 100644
|
||||
}
|
||||
|
||||
diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
|
||||
index e2fcc5d..be26f8f 100644
|
||||
index 02e972c..976847d 100644
|
||||
--- a/dlls/wined3d/state.c
|
||||
+++ b/dlls/wined3d/state.c
|
||||
@@ -1126,7 +1126,7 @@ void state_fog_fragpart(struct wined3d_context *context, const struct wined3d_st
|
||||
@@ -210,7 +210,7 @@ index e2fcc5d..be26f8f 100644
|
||||
* Same happens with Vertexfog on transformed vertices
|
||||
*/
|
||||
new_source = FOGSOURCE_COORD;
|
||||
@@ -4190,7 +4190,7 @@ static void load_vertex_data(struct wined3d_context *context,
|
||||
@@ -4187,7 +4187,7 @@ static void load_vertex_data(struct wined3d_context *context,
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@@ -220,10 +220,10 @@ index e2fcc5d..be26f8f 100644
|
||||
*/
|
||||
WARN("unsupported blending in openGl\n");
|
||||
diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c
|
||||
index 3465299..dfa9ee4 100644
|
||||
index c763330..3aca4f2 100644
|
||||
--- a/dlls/wined3d/utils.c
|
||||
+++ b/dlls/wined3d/utils.c
|
||||
@@ -3647,7 +3647,7 @@ static void compute_texture_matrix(const struct wined3d_gl_info *gl_info, const
|
||||
@@ -3854,7 +3854,7 @@ static void compute_texture_matrix(const struct wined3d_gl_info *gl_info, const
|
||||
* check for pixel shaders, and the shader has to undo the default gl divide.
|
||||
*
|
||||
* A more serious problem occurs if the app passes 4 coordinates in, and the
|
||||
@@ -233,7 +233,7 @@ index 3465299..dfa9ee4 100644
|
||||
default:
|
||||
mat._14 = mat._24 = mat._34 = 0.0f; mat._44 = 1.0f;
|
||||
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
|
||||
index f9bb9d0..a8af32e 100644
|
||||
index 92d5490..cf9e88e 100644
|
||||
--- a/dlls/wined3d/wined3d_private.h
|
||||
+++ b/dlls/wined3d/wined3d_private.h
|
||||
@@ -1010,8 +1010,9 @@ struct wined3d_stream_info
|
||||
@@ -248,7 +248,7 @@ index f9bb9d0..a8af32e 100644
|
||||
DWORD get_flexible_vertex_size(DWORD d3dvtVertexType) DECLSPEC_HIDDEN;
|
||||
|
||||
#define eps 1e-8f
|
||||
@@ -1417,7 +1418,8 @@ void context_alloc_occlusion_query(struct wined3d_context *context,
|
||||
@@ -1422,7 +1423,8 @@ void context_alloc_occlusion_query(struct wined3d_context *context,
|
||||
void context_apply_blit_state(struct wined3d_context *context, const struct wined3d_device *device) DECLSPEC_HIDDEN;
|
||||
BOOL context_apply_clear_state(struct wined3d_context *context, const struct wined3d_device *device,
|
||||
UINT rt_count, const struct wined3d_fb_state *fb) DECLSPEC_HIDDEN;
|
||||
@@ -259,5 +259,5 @@ index f9bb9d0..a8af32e 100644
|
||||
struct wined3d_surface *render_target, struct wined3d_surface *depth_stencil, DWORD location) DECLSPEC_HIDDEN;
|
||||
void context_active_texture(struct wined3d_context *context, const struct wined3d_gl_info *gl_info,
|
||||
--
|
||||
2.4.2
|
||||
2.5.0
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user