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