Henri Verbeet
94c0da184e
wined3d: Create a PBO in surface_load_location() even if SFLAG_INSYSMEM is already set.
...
In the longer term, sysmem and pbo should be separate resource locations.
2011-12-01 10:06:12 +01:00
Henri Verbeet
39ebb992f7
wined3d: Introduce a separate function to determine if a surface needs a PBO.
2011-12-01 10:06:07 +01:00
Henri Verbeet
4a7cbba0ea
wined3d: Move the surface map counting code to wined3d_surface_map().
2011-12-01 10:06:02 +01:00
Henri Verbeet
3a2921c559
ddraw: Keep the primary surface mapped at the same address for early ddraw versions.
2011-11-30 11:50:58 +01:00
Henri Verbeet
3430e11605
wined3d: Add a flags parameter to wined3d_surface_create().
2011-11-30 11:50:48 +01:00
Henri Verbeet
24775459c8
wined3d: Don't apply fixups to converted surfaces.
2011-11-25 16:21:56 +01:00
Henri Verbeet
7459180a51
wined3d: Get rid of the WINED3DCOLORVALUE typedef.
2011-11-16 09:41:50 +01:00
Henri Verbeet
0ba5f7dd98
wined3d: Get rid of RTL_DISABLE.
2011-11-09 11:34:11 +01:00
Henri Verbeet
b6c7a3dbc8
wined3d: Don't print FIXMEs for misaligned surface maps.
2011-11-09 11:34:04 +01:00
Henri Verbeet
d6b432b068
wined3d: Get rid of client_memory from wineD3DSurface_DIB.
2011-11-08 09:50:23 +01:00
Henri Verbeet
896aaa67ca
wined3d: Get rid of holdbitmap from wineD3DSurface_DIB.
2011-11-08 09:50:18 +01:00
Henri Verbeet
604d154002
wined3d: Only report a broken pitch in wined3d_surface_map().
...
We'd like the correct pitch for internal calls to wined3d_surface_get_pitch().
2011-11-08 09:50:13 +01:00
Stefan Dösinger
7eefed1410
wined3d: YUY2 and UYVY are block based.
2011-11-07 14:32:16 +01:00
Stefan Dösinger
7fd752047d
d3d9/tests: Test partial block locks.
2011-11-07 14:27:24 +01:00
Henri Verbeet
a64271c07e
wined3d: Make the surface parameter to blit_shader.set_shader() const.
2011-11-07 11:32:47 +01:00
Henri Verbeet
35515e4669
wined3d: Remove surface_draw_overlay from wined3d_surface_ops.
2011-11-07 11:32:34 +01:00
Henri Verbeet
48b6050ca3
wined3d: Remove surface_preload from wined3d_surface_ops.
2011-11-07 11:32:28 +01:00
Henri Verbeet
3f11631e75
wined3d: Merge surface_getdc() and gdi_surface_getdc().
2011-11-04 10:44:32 +01:00
Henri Verbeet
3bfecd58d2
wined3d: Avoid a drawable -> texture transfer through sysmem in arbfp_blit_surface() with backbuffer ORM.
2011-11-04 10:44:14 +01:00
Stefan Dösinger
9b0adb406d
wined3d: Locking partial blocks is not allowed in DEFAULT pool resources.
2011-11-03 13:52:15 +01:00
Henri Verbeet
335a6ca78e
wined3d: Use wined3d_surface_blt() in swapchain_gl_present().
2011-11-03 13:00:50 +01:00
Henri Verbeet
c30ea3767c
wined3d: Use wined3d_surface_blt() in surface_upload_from_surface().
2011-11-03 13:00:40 +01:00
Henri Verbeet
fcf96b634a
wined3d: Create the DIB section for DDSCAPS_OWNDC surfaces on initialization.
2011-10-31 23:52:51 +01:00
Henri Verbeet
7de4df9fd9
wined3d: Get rid of the wined3d_surface_bltfast() export.
2011-10-31 23:52:47 +01:00
Henri Verbeet
bf5ab0a199
wined3d: Make the device parameter to surface_blt_to_drawable() const.
2011-10-27 19:34:19 +02:00
Henri Verbeet
61550ff1de
wined3d: Use the correct pitch in surface_upload_data().
...
This fixes a regression introduced by commit
2da4f87a7e
.
2011-10-27 19:34:00 +02:00
Henri Verbeet
22d2d26ffc
wined3d: Make the device parameter to surface_blt_fbo() const.
2011-10-27 12:25:29 +02:00
Henri Verbeet
54dc38718b
wined3d: Make the device parameter to wined3d_surface_depth_blt_fbo() const.
2011-10-27 12:25:24 +02:00
Henri Verbeet
6a981239db
wined3d: Get rid of the unused palette9 wined3d_surface field.
2011-10-27 12:25:19 +02:00
Henri Verbeet
a42774f042
wined3d: Only check for sRGB attachability when needed in surface_load_texture().
2011-10-26 12:41:33 +02:00
Henri Verbeet
2da4f87a7e
wined3d: Upload directly from the source surface in wined3d_surface_blt(), if possible.
...
This avoids either loading sysmem surfaces into video memory (wasting GPU
memory) and then doing a blit on the GPU, or downloading GPU surfaces to
sysmem, doing a blit on the CPU, and likely uploading it again. This mostly
matters for ddraw and d3d8 applications, d3d9 already has to go through
wined3d_device_update_surface() to transfer data from sysmem surfaces to GPU
surfaces.
2011-10-25 16:57:23 +02:00
Henri Verbeet
e6101816a2
wined3d: Get rid of surface_gdi_cleanup().
...
It's effectively the same as surface_cleanup(). The GL objects that
surface_cleanup() destroys are never created for "GDI" surfaces.
2011-10-24 11:16:40 +02:00
Henri Verbeet
6e8273177a
wined3d: Reject multisampled readbacks in wined3d_surface_get_render_target_data().
2011-10-24 11:16:33 +02:00
Henri Verbeet
4229d865d2
wined3d: Only try to load surfaces from the drawable if the drawable is current in surface_load_sysmem().
2011-10-24 11:16:27 +02:00
Henri Verbeet
82f067f5cd
wined3d: Allow loading multisampled surfaces into sysmem.
2011-10-20 11:02:57 +02:00
Henri Verbeet
3042860478
wined3d: Detach any attached overlays on surface cleanup.
...
Spotted by Dan Kegel / Valgrind.
2011-10-19 12:23:47 +02:00
Henri Verbeet
68e1484bec
wined3d: Mark default pool surfaces lost when they're unloaded.
2011-10-18 15:10:13 +02:00
Henri Verbeet
ca43c49968
wined3d: Keep surfaces in sysmem if they're both already there in wined3d_surface_blt().
...
The idea is to avoid bouncing surfaces between the CPU and GPU when doing both
locks and blits on a surface. This is mostly an issue for ddraw applications.
2011-10-18 15:10:06 +02:00
Stefan Dösinger
496b438ede
wined3d: Remove d3d8/9 palette support.
2011-10-11 13:37:49 +02:00
Henri Verbeet
5609f062d2
wined3d: Dump the WINEDDBLTFX structure in wined3d_surface_blt().
2011-09-20 16:21:38 +02:00
Henri Verbeet
b9fcf71c71
ddraw: Use real flips.
2011-09-16 17:23:08 +02:00
Henri Verbeet
8009a4947b
wined3d: Flush after surface updates.
...
This is similar to 5d1d07abcf
. We need to flush
to ensure resource updates are visible in other contexts, since otherwise GL
doesn't make any ordering guarantees between contexts.
2011-09-15 15:41:40 +02:00
Henri Verbeet
bbb77cba74
wined3d: Add support for flipping compressed surfaces to surface_cpu_blt().
2011-09-09 13:33:33 +02:00
Henri Verbeet
5c57b53a6c
wined3d: Use the CPU blitter for blitting to converted surfaces.
2011-09-09 13:33:25 +02:00
Henri Verbeet
e82e1c2ac5
wined3d: Disable sRGB decoding in draw_textured_quad().
...
We're always supposed to draw the RGB texture here. sRGB decoding may be
enabled if sRGB decoding was enabled to last time the surface was used as a
texture, or if it was never used as a texture at all.
2011-09-09 13:33:22 +02:00
Gerald Pfeifer
0affcc3a7d
wined3d: Remove dead code (and variable) from wined3d_surface_flip. wined3d_surface_flip.
2011-09-08 20:08:06 +02:00
Henri Verbeet
19da825b12
wined3d: Use draw_binding for the surface_modify_location() call in surface_unmap() as well.
2011-09-08 11:11:10 +02:00
Henri Verbeet
79c438b2f2
wined3d: Implement wined3d_surface_flip() as a blit.
...
This allows us to actually take the "override" parameter into account. Plain
back -> front flips will be detected in wined3d_surface_flip() and will still
be handled by wined3d_swapchain_present().
2011-09-07 11:12:17 +02:00
Henri Verbeet
1b9bc1a950
wined3d: Try doing a present in wined3d_surface_blt() instead of IWineD3DSurfaceImpl_BltOverride().
2011-09-06 10:48:36 +02:00
Henri Verbeet
b86d69de16
wined3d: Don't override the swapchain present interval in IWineD3DSurfaceImpl_BltOverride().
2011-09-06 10:48:31 +02:00