Commit Graph

1490 Commits

Author SHA1 Message Date
Matteo Bruni 5020020934 d3d8/tests: Add a test for drawing with released buffers.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-28 21:37:30 +01:00
Matteo Bruni 873178c03a d3d8: Release system memory wined3d buffer only after the draw buffer is destroyed.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46371
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-28 21:37:30 +01:00
Matteo Bruni cf11ddfe41 d3d8/tests: Fix device tests on Windows 10.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-26 20:48:37 +01:00
Matteo Bruni e2ffbf2e48 d3d8/tests: Add a test for Reset() with bound DEFAULT resources.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-22 12:25:32 +01:00
Michael Stefaniuc 40c994d906 d3d8/tests: Remove useless casts to self.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-20 15:52:03 +01:00
Paul Gofman e70c4846ff d3d8/tests: Add test for MaxVertexW device capability.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 18:31:35 +01:00
Henri Verbeet 3ccbb762d2 d3d8: Improve ValidateVertexShader().
Based largely on a patch by Sebastian Lackner.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-08 12:11:02 +01:00
Józef Kucia 61a5b6c64c d3d8/tests: Use correct index variable in test_resource_access() (Coverity).
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-06 22:25:08 +01:00
Paul Gofman 5f823e11a3 d3d8/tests: Port test_alphatest() from d3d9.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-06 22:13:04 +01:00
Matteo Bruni 4e3ce8c1f0 d3d8: Refuse to create D3DUSAGE_WRITEONLY textures.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-05 19:27:06 +01:00
Zhiyi Zhang 13cca44d20 d3d8: Fix building on Mac.
bool is a reserved word in c99.

Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-04 19:20:49 +01:00
Matteo Bruni 8a69db2ffa d3d8/tests: Use a D3DUSAGE_WRITEONLY buffer in test_vb_lock_flags().
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-31 18:13:18 +01:00
Matteo Bruni ac4f768e61 wined3d: Replace WINED3DUSAGE_WRITEONLY with resource access flags.
Always allow read and write mapping of ddraw buffers:
test_vb_writeonly() depends on that.

Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-31 18:13:18 +01:00
Matteo Bruni 10061d591e d3d8: Don't allow map read access to D3DUSAGE_WRITEONLY buffers.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-31 18:13:18 +01:00
Matteo Bruni 7003ba4489 d3d8: Take usage flags into account when assigning map flags.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-31 00:13:00 +01:00
Matteo Bruni 955744e0c9 d3d8: Drop map read access from the internal buffers used for user-pointer draws.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-28 18:36:20 +01:00
Matteo Bruni 8384452d19 d3d8/tests: Test D3DPOOL_SYSTEMMEM vertex buffer lock address stability.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-28 18:36:15 +01:00
Józef Kucia 5c3d4f39e2 d3d8: Use wined3d_bit_scan() instead of open-coding it.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-25 23:09:07 +01:00
Józef Kucia b51bc84338 wined3d: Move wined3d_bit_scan() to public header.
wine/port.h is required for ffs().

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-25 23:09:07 +01:00
Zebediah Figura 38fb14a688 d3d8/tests: Port test_draw_primitive() from d3d9.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-25 18:55:40 +01:00
Matteo Bruni 6e1015d8bc d3d8/tests: Test drawing with D3DPOOL_SYSTEMMEM textures.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-24 17:33:38 +01:00
Zebediah Figura 7163fbba85 wined3d: Remove stateblock handling from wined3d_device_multiply_transform().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-23 16:32:27 +01:00
Zebediah Figura 1bd1d0cca3 d3d8/tests: Add a test for MultiplyTransform().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-23 16:32:19 +01:00
Józef Kucia a2829a6529 d3d8: Clamp index buffer upload range to buffer size.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-16 17:15:03 +01:00
Józef Kucia 58868304dc d3d8: Clamp vertex buffer upload range to buffer size.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-16 17:14:41 +01:00
Henri Verbeet dc3221a9c8 d3d8: Avoid calling wined3d_device_process_vertices() with unmappable source buffers.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-08 13:07:37 -06:00
Henri Verbeet da50331bde d3d8/tests: Add a test for ProcessVertices() on D3DPOOL_SYSTEMMEM buffers.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-08 13:07:37 -06:00
Józef Kucia 02222e406f d3d8/tests: Add test for base vertex index with sysmem vertex buffers.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-07 10:47:21 -06:00
Józef Kucia ce8ef46ace d3d8: Upload vertex buffer range relative to base vertex index.
Fixes a regression introduced by 75b7ff6056.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46357
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-07 10:47:21 -06:00
Józef Kucia bdccebcab4 d3d8: Fix Reset() with system memory buffers.
Fixes a regression introduced by commit
75b7ff6056.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-27 22:43:47 +01:00
Paul Gofman f6896e062d d3d8: Fix crash in d3d8_indexbuffer_Release().
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-20 20:19:16 +01:00
Paul Gofman 90bd6dc3ee d3d8: Fix crash in d3d8_vertexbuffer_Release().
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-20 20:19:14 +01:00
Matteo Bruni 695dbca9d3 d3d8: Support drawing from D3DPOOL_SYSTEMMEM index buffers.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-17 22:35:22 +01:00
Matteo Bruni 75b7ff6056 d3d8: Support drawing from D3DPOOL_SYSTEMMEM vertex buffers.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-17 22:35:22 +01:00
Józef Kucia 7aa4d27681 d3d8: Do not touch output parameters when d3d8_GetAdapterIdentifier() fails.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-03 22:27:05 +01:00
Józef Kucia 6dddb88ebe wined3d: Lock wined3d mutex in wined3d_get_adapter_identifier().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-03 22:27:05 +01:00
Józef Kucia 9042fbe1e4 wined3d: Lock wined3d mutex in wined3d_swapchain_present().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-03 22:27:05 +01:00
Józef Kucia 4dcba35b88 d3d8: Remove dead code from indexbuffer_init() (Coverity).
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-30 19:36:51 +01:00
Józef Kucia 662e645257 wined3d: Lock wined3d mutex in wined3d_swapchain_create().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 17:48:34 +01:00
Józef Kucia 56d2db81b3 wined3d: Lock wined3d mutex in wined3d_swapchain_decref().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 17:48:34 +01:00
Józef Kucia 240ebb189a d3d8: Avoid locking wined3d mutex around wined3d_swapchain_incref().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 17:48:34 +01:00
Henri Verbeet 9863c9a46f d3d8: Pass wined3d parameter types to d3d8_device_create_surface().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-23 20:17:44 +01:00
Henri Verbeet b9d50242a6 d3d8: Disallow rendertarget and depth/stencil usage on index buffers.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-21 17:06:29 +01:00
Henri Verbeet 55092b5c9d d3d8: Disallow rendertarget and depth/stencil usage on vertex buffers.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-21 17:06:16 +01:00
Henri Verbeet fc97073e2a d3d8: Disallow rendertarget and depth/stencil usage on 3D textures.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-20 16:26:04 +01:00
Henri Verbeet 28324c5be9 d3d8: Disallow index buffers in the scratch pool.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-20 16:26:04 +01:00
Henri Verbeet 9bac6f159c wined3d: Disallow dynamic rendertarget and depth/stencil resources.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-19 22:42:41 +01:00
Henri Verbeet 0bae2bed43 wined3d: Require exclusive GPU access for rendertarget and depth/stencil resources.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-19 22:42:41 +01:00
Henri Verbeet 826be9ee10 wined3d: Make "driver private" formats always mappable.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-19 22:42:41 +01:00
Henri Verbeet 54d63891f3 wined3d: Allow binding scratch textures.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-19 22:42:41 +01:00