Henri Verbeet
6e30b042e1
wined3d: Introduce wined3d_texture_get_overlay_position().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-06 12:25:40 +09:00
Henri Verbeet
b170952230
ddraw: Use wined3d_texture_get_sub_resource() in ddraw_surface7_Flip().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-05 13:52:49 +09:00
Henri Verbeet
7d45318aea
ddraw: Move the mip-level dimensions fix-up from ddraw_surface_init() to ddraw_surface_create().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-05 13:52:43 +09:00
Henri Verbeet
6037179f6b
ddraw: Use wined3d_rendertarget_view_create_from_sub_resource() in ddraw_surface_get_rendertarget_view().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-04 14:41:44 +09:00
Henri Verbeet
44f2589e7c
ddraw: Use wined3d_resource_unmap() in ddraw_surface7_Unlock().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-03 21:56:38 +09:00
Henri Verbeet
36187987ed
ddraw: Use wined3d_resource_map() in surface_lock().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-03 21:56:32 +09:00
Henri Verbeet
6b2a080372
ddraw: Use wined3d_resource_map() in d3d_texture2_Load().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-02 14:39:01 +09:00
Henri Verbeet
7e57924d32
ddraw: Use wined3d_texture_release_dc() in ddraw_surface7_ReleaseDC().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-02 14:38:55 +09:00
Henri Verbeet
83a147d98a
ddraw: Use wined3d_texture_get_dc() in ddraw_surface7_GetDC().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-02 14:38:45 +09:00
Henri Verbeet
88c9ade49c
ddraw: Use wined3d_texture_get_dc() in ddraw_surface_update_frontbuffer().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-02 14:38:39 +09:00
Henri Verbeet
8ae4580137
ddraw: Print an ERR for non-zero sub-resource indices in ddraw_surface7_Flip().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-01 17:53:37 +09:00
Henri Verbeet
257ee8cc6e
ddraw: Use wined3d_texture_blt() in ddraw_surface_update_frontbuffer().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-01 17:53:36 +09:00
Henri Verbeet
1a812eb666
ddraw: Use wined3d_texture_blt() in ddraw_surface_blt_clipped().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-01 17:53:36 +09:00
Henri Verbeet
d6e7f18c84
ddraw: Use wined3d_texture_blt() in ddraw_surface7_BltFast().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-29 21:25:15 +09:00
Henri Verbeet
ce882bd6b4
ddraw: Always store a pointer to the wined3d texture in the surface.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-29 21:25:15 +09:00
Henri Verbeet
58a7c3cb7d
ddraw: Pass non-NULL rectangles to wined3d_surface_blt() in ddraw_surface7_BltFast().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-28 13:43:52 +09:00
Henri Verbeet
643f1f1c74
ddraw: Pass non-NULL rectangles to wined3d_surface_blt() in ddraw_surface_blt_clipped().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-28 13:43:49 +09:00
Henri Verbeet
492e785513
ddraw: Pass non-NULL rectangles to wined3d_surface_blt() in ddraw_surface_update_frontbuffer().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-28 13:43:45 +09:00
Henri Verbeet
ad11f38db9
wined3d: Rename the texture creation flags to WINED3D_TEXTURE_CREATE_*.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-27 12:38:54 +09:00
Henri Verbeet
dafaae7730
wined3d: Unify WINED3D_RTYPE_TEXTURE and WINED3D_RTYPE_CUBE_TEXTURE.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-27 12:38:46 +09:00
Henri Verbeet
4d94a1e651
ddraw: DDSCAPS_ALLOCONLOAD requires DDSCAPS_TEXTURE.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-26 14:54:08 +09:00
Henri Verbeet
6dc5d194ad
ddraw: DDSCAPS_ALLOCONLOAD doesn't override DDSD_LPSURFACE.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-26 14:54:04 +09:00
Henri Verbeet
6c9e1a4735
ddraw: DDSD_LPSURFACE requires a non-NULL lpSurface.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-26 14:53:58 +09:00
Henri Verbeet
521e3a44cf
ddraw: Only allow DDSCAPS_MIPMAP on textures.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-06 18:08:39 +01:00
Henri Verbeet
e53567f72a
ddraw: Use the largest dimension to determine the mipmap count for version 7 surfaces.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-06 18:08:38 +01:00
Henri Verbeet
9c96a525e7
wined3d: Get rid of unused error codes.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-05 15:45:30 +01:00
Henri Verbeet
8f91d3ccd8
ddraw: Simplify the root surface test in ddraw_surface7_GetPriority().
...
This fixes commit 97f0345f71
. I assume it was
applied by mistake, since it's also missing the correct sign-off.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-05 15:44:57 +01:00
Riccardo Bortolato
cb03e216e5
ddraw: Check for mipmap sublevel through caps in ddraw_surface7_SetColorKey().
...
Enabled some previously failing tests in ddraw/tests/ddraw7.c.
Signed-off-by: Riccardo Bortolato <rikyz619@gmail.com>
Signed-off-by: Stefan Dösinger <stefandoesinger@gmx.at>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-03 20:03:23 +01:00
Riccardo Bortolato
97f0345f71
ddraw: Check if surface is a mipmap sublevel or a non-positive X top level surface through caps in ddraw_surface7_GetPriority().
...
Signed-off-by: Riccardo Bortolato <rikyz619@gmail.com>
Signed-off-by: Stefan Dösinger <stefandoesinger@gmx.at>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-23 09:24:06 +01:00
Henri Verbeet
1ebb42ca53
ddraw: Mark surfaces as lost when the device window is deactivated.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-04 21:56:19 +09:00
Henri Verbeet
83f10e2251
ddraw: Return DDERR_NOEXCLUSIVEMODE in ddraw_surface7_Flip() when not in exclusive mode.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-04 21:56:19 +09:00
Hugh McMaster
11669fa5e2
Assorted spelling and grammar fixes.
...
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-17 22:56:40 +09:00
Riccardo Bortolato
f7bf61ea4c
ddraw: Remove unused mipmap_level from ddraw_surface.
...
Signed-off-by: Riccardo Bortolato <rikyz619@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-04 14:41:37 +09:00
Riccardo Bortolato
1d1487105d
wined3d: Pass a wined3d_box to wined3d_surface_map..
...
Introduced a new surface_check_block_align function that accepts a
wined3d_box, eventually the old _rect version will be completely
replaced.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
2015-10-07 21:28:51 +09:00
Riccardo Bortolato
825b141e5a
wined3d: Remove wined3d_surface_get_flip_status stub.
2015-09-10 20:00:52 +09:00
Riccardo Bortolato
e869ef5c0f
wined3d: Remove wined3d_surface_get_blt_status stub.
2015-09-10 20:00:46 +09:00
Stefan Dösinger
40c5303b62
ddraw: Return the right error if range color keys are used.
2015-08-24 20:42:40 +09:00
Michael Müller
2f17d5b136
ddraw: Make some functions hotpachable.
2015-06-12 21:23:12 +09:00
Henri Verbeet
4a416f8d37
ddraw: Release the surface clipper (if any) in ddraw_surface_wined3d_object_destroyed() (Valgrind).
2015-04-30 16:17:49 +09:00
Stefan Dösinger
02be2e38a8
ddraw: Update the palette before presents to the NULL window.
2015-03-23 22:59:14 +09:00
Stefan Dösinger
df829de88d
ddraw: Handle DDBLT_ROP in ddraw.
2015-03-18 21:03:22 +09:00
Stefan Dösinger
948202c47f
ddraw: Add validation and tests for DDBLT_ROP.
2015-03-17 23:34:28 +09:00
Stefan Dösinger
a84980168c
ddraw: Add DDBLT_DEPTHFILL validation.
2015-03-17 23:33:56 +09:00
Stefan Dösinger
6cb795b4b6
ddraw: Add DDBLT_COLORFILL validation.
2015-03-17 23:33:44 +09:00
Sebastian Lackner
68528519fc
ddraw: Remove unused code for ChangeUniquenessValue.
2015-03-03 17:12:41 +09:00
Amine Khaldi
21bfc8c440
include: Correct DDSCAPS2 and DDSURFACEDESC2 structures and their uses.
2015-03-02 23:00:32 +09:00
Henri Verbeet
ea534c9ab4
wined3d: Allow initial texture contents to be specified with wined3d_texture_create().
2015-01-05 20:15:35 +01:00
Henri Verbeet
af9ccb490a
ddraw: Use wined3d_log2i() to calculate the level count in ddraw_surface_create().
2014-12-10 19:32:08 +01:00
Henri Verbeet
97856bcfee
wined3d: Replace wined3d_surface_update_desc() with wined3d_texture_update_desc().
2014-09-29 10:37:35 +02:00
Henri Verbeet
5000eba6d0
ddraw: Set user memory in ddraw_surface_create() instead of ddraw_surface_init().
2014-09-29 10:37:25 +02:00
Henri Verbeet
e28800c6a4
ddraw: Move the pitch / linear size validation from ddraw_surface_init() to ddraw_surface_create().
2014-09-29 10:37:22 +02:00
Henri Verbeet
b005ad6f90
wined3d: Use rendertarget views for color output instead of surfaces.
2014-08-21 12:24:42 +02:00
Stefan Dösinger
9bb5b00dd5
ddraw: Do not set lpSurface in GetSurfaceDesc.
...
This reverts a5c484cbf3
. The test included
in a5c484cb
is wrong and contains a typo that leads to incorrect
assumptions. The Dungeon Keeper 2 crash that was the reason for patch
a5c484cb
is fixed properly by the previous patch.
2014-08-19 14:50:17 +02:00
Stefan Dösinger
61ee3323ad
ddraw: Clear application-passed lpSurface pointers.
2014-08-19 14:50:12 +02:00
Stefan Dösinger
341db6d8d3
wined3d: Remove wined3d_texture_set/get_priority.
2014-07-16 16:10:05 +02:00
Stefan Dösinger
2abecc46c6
wined3d: Remove wined3d_surface_set/get_priority.
2014-07-16 16:09:51 +02:00
Stefan Dösinger
5b9f91c18d
ddraw: Add validation to SetPriority / GetPriority.
2014-07-16 16:09:22 +02:00
Stefan Dösinger
403d7c1dee
ddraw: Refuse SetPalette and GetPalette on lost surfaces.
...
The SetPalette check is outside of ddraw_surface_set_palette to make
sure the palettes are properly freed when a lost P8 surface is destroyed.
2014-07-07 15:49:06 +02:00
Henri Verbeet
8ebc82cd8d
ddraw: Check for a lost surface in ddraw_surface7_Flip().
2014-07-01 12:51:46 +02:00
Stefan Dösinger
9d49b7a9be
wined3d: Set palettes on the swapchain.
2014-06-30 22:04:53 +02:00
Henri Verbeet
b0f1feb4f0
ddraw: Properly support creating compressed user memory surfaces.
2014-06-12 18:05:20 +02:00
Henri Verbeet
e2d9cb69ba
ddraw: Use wined3d_surface_get_pitch() to calculate dwLinearSize for compressed surfaces.
2014-06-12 18:05:20 +02:00
Henri Verbeet
92ea79a198
ddraw: Clear DDSD_PITCH on compressed surfaces.
2014-06-12 18:05:19 +02:00
Henri Verbeet
64a5dc11bf
ddraw: Clear DDSD_LINEARSIZE on uncompressed surfaces.
2014-06-12 18:05:18 +02:00
Stefan Dösinger
fd0189bbfa
wined3d: Move get_dc palette updates to ddraw.
2014-05-15 19:05:02 +02:00
Stefan Dösinger
fc25510fad
wined3d: Remove wined3d_surface_get_palette.
2014-05-12 21:24:59 +02:00
Stefan Dösinger
a227188573
ddraw: Alpha palettes can only be attached to textures.
2014-05-07 20:21:57 +02:00
Francois Gouget
4e950d9cbc
ddraw: Remove WINAPI on static functions where not needed.
2014-05-02 17:15:22 +02:00
Stefan Dösinger
590582e6bc
ddraw: Only ddraw7 disallows SetPalette on sublevels.
2014-04-25 20:04:38 +02:00
Henri Verbeet
ac70dd2c97
ddraw: Validate the pitch for user memory surfaces against the unaligned minimum pitch.
...
User memory surfaces have a different minimum alignment from regular surfaces.
This fixes a regression introduced by commit
9c138d772c
.
2014-04-23 15:00:35 +02:00
Stefan Dösinger
ee57e19b40
ddraw: SetPrivateData(..., data = NULL, ...) is not valid.
2014-04-08 19:23:24 +02:00
Stefan Dösinger
7d793715f3
ddraw: Use the new private store api.
2014-03-17 20:23:58 +01:00
Henri Verbeet
76ab86ee7f
ddraw: Disallow user memory surfaces before version 4.
2014-03-05 11:49:41 +01:00
Henri Verbeet
74b4b821ab
ddraw: Clear DDSD_LPSURFACE after surface creation.
2014-03-05 11:49:38 +01:00
Henri Verbeet
9c138d772c
ddraw: Validate the surface pitch for user memory surfaces in ddraw_surface_init().
2014-03-04 11:51:06 +01:00
Henri Verbeet
10db40cecc
ddraw: Don't overwrite the caller specified pitch in ddraw_surface_init().
2014-03-04 11:51:03 +01:00
Henri Verbeet
162bc8db6e
ddraw: User memory surfaces should be created with an explicit pitch.
2014-03-04 11:51:01 +01:00
Henri Verbeet
da2fafca8d
ddraw: User memory surfaces should be in the system memory pool.
2014-03-04 11:50:58 +01:00
Henri Verbeet
7c6ca2077f
ddraw: Allow attaching surfaces other than depth buffers in ddraw_surface4_AddAttachedSurface().
2014-01-27 17:39:47 +01:00
Henri Verbeet
bddb0433f3
ddraw: Return DDERR_NOTONMIPMAPSUBLEVEL for ddraw_surface7_SetColorKey() on mipmap sub levels.
2014-01-09 17:39:47 +01:00
Henri Verbeet
f7ee96c311
ddraw: Don't propagate color key changes to attached surfaces.
2014-01-09 15:50:45 +01:00
Henri Verbeet
4710c4b51a
wined3d: Store color keys in textures instead of in surfaces.
2014-01-09 15:50:39 +01:00
Stefan Dösinger
b91973daa7
wined3d: Merge wined3d_surface_set_mem into wined3d_surface_update_desc .
2014-01-08 20:02:22 +01:00
Stefan Dösinger
2a012ba16f
ddraw: Always set surface width, height and format in ddraw_surface7_SetSurfaceDesc.
2014-01-08 19:55:06 +01:00
Stefan Dösinger
f53d83cf26
ddraw: Sysmem overlays are not allowed.
2013-12-12 19:21:37 +01:00
Stefan Dösinger
0fdb1aaff6
ddraw: SetSurfaceDesc does not work on primaries.
2013-12-12 19:21:36 +01:00
Henri Verbeet
d5863f7f40
ddraw: Set DDPCAPS_PRIMARYSURFACE when attaching a palette to the primary surface.
2013-12-12 12:08:25 +01:00
Henri Verbeet
9651079ff9
ddraw: Don't set the palette on attached backbuffers in ddraw_surface7_SetPalette().
...
Tests show this is just wrong. This patch fixes a regression introduced by
commit 74e3f516bc
.
2013-12-12 12:08:19 +01:00
Henri Verbeet
1f0bb534ec
ddraw: Keep a reference to the palette in the surface.
2013-12-12 12:08:16 +01:00
Henri Verbeet
0f49ffae41
ddraw: Properly swap the wined3d texture parent in ddraw_surface7_Flip().
2013-12-06 16:46:39 +01:00
Henri Verbeet
ce09d3633a
ddraw: Properly flip through the swap chain in ddraw_surface7_Flip().
2013-12-05 12:40:56 +01:00
Henri Verbeet
7524258aaf
ddraw: Implement flips inside ddraw.
2013-12-05 12:40:56 +01:00
Henri Verbeet
8797a9eda3
ddraw: Require a non-zero back buffer count for swap chains.
2013-12-05 12:40:56 +01:00
Henri Verbeet
23f47b573e
ddraw: Require DDSCAPS_FLIP and DDSCAPS_COMPLEX to be used together.
2013-12-05 12:40:55 +01:00
Henri Verbeet
6cba2285bc
ddraw: Reject creating primary surfaces with DDSCAPS_TEXTURE.
2013-12-04 11:08:22 +01:00
Henri Verbeet
00eaf27dc7
ddraw: Validate that surfaces are on the same swap chain in ddraw_surface7_Flip().
2013-12-04 11:07:51 +01:00
Henri Verbeet
74e3f516bc
ddraw: Attach the first surface in the swap chain to the last one.
2013-12-04 11:07:46 +01:00
Henri Verbeet
ab8d59c29d
ddraw: Reject flips of surfaces with themselves.
2013-12-04 11:07:41 +01:00
Frédéric Delanoy
5ba7f79bad
Assorted spelling fixes.
2013-12-03 19:41:53 +01:00
Stefan Dösinger
5e43ee256c
ddraw: Check for lpSurface=NULL in SetSurfaceDesc.
2013-12-03 19:36:11 +01:00