Matteo Bruni
9d9dd8b378
d3d9: Always allow read and write map access to non-DEFAULT buffers.
...
D3d9 is very lax WRT map access to buffers and there isn't really much
of a reason for us to restrict read access to non-DEFAULT resources.
On the other hand, we'd still really like to be able to ensure that
DEFAULT, DYNAMIC | WRITEONLY buffers get allocated in the proper
memory region and get efficient data uploads, so keep the restriction
for DEFAULT resources.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46849
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-05-14 20:13:59 +02:00
Matteo Bruni
7052e8e390
d3d9: Release system memory wined3d buffer only after the draw buffer is destroyed.
...
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
07c20ef0c9
d3d9: 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
4e58c72e3a
d3d9: 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:12:57 +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
Paul Gofman
a878b0fae8
d3d9: Fix crash in d3d9_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:12 +01:00
Paul Gofman
e6c6be1cf7
d3d9: Fix crash in d3d9_vertexbuffer_Release().
...
If there is no draw buffer then buffer pointer gets freed in
wined3d_buffer_decref() via d3d9_vertexbuffer_wined3d_parent_ops
and consequent check for buffer->draw_buffer results in freed
memory access.
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:10 +01:00
Matteo Bruni
f34a19e68e
d3d9: 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
Henri Verbeet
b18a53a5b4
d3d9: Support drawing from D3DPOOL_SYSTEMMEM vertex buffers.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45486
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
92c5d32ef4
d3d9: 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
Henri Verbeet
d9db221f0d
d3d9: Disallow creating managed index buffers on d3d9ex devices.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-22 23:55:58 +01:00
Henri Verbeet
b4590d3368
d3d9: Disallow creating managed vertex buffers on d3d9ex devices.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-22 23:55:58 +01:00
Henri Verbeet
d496876122
d3d9: 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:30 +01:00
Henri Verbeet
5e000be16e
d3d9: 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:24 +01:00
Henri Verbeet
2843e4d3cf
d3d9: 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
7cba915710
wined3d: Pass correct bind flags to texture creation functions.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-31 16:17:36 +01:00
Henri Verbeet
6ca15e9c13
wined3d: Split WINED3D_RESOURCE_ACCESS_MAP into WINED3D_RESOURCE_ACCESS_MAP_R and WINED3D_RESOURCE_ACCESS_MAP_W.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 13:43:52 +01:00
Henri Verbeet
b5d0cad40d
d3d9: Explicitly translate resource map flags.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-16 14:25:03 +01:00
Henri Verbeet
02dc04bcc9
wined3d: Do not implicitly set WINED3D_RESOURCE_ACCESS_MAP for dynamic resources.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-14 09:06:51 +01:00
Henri Verbeet
29d824d151
d3d9: Set WINED3D_RESOURCE_ACCESS_MAP on buffers.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-13 20:23:26 +01:00
Henri Verbeet
6187de0143
d3d9: Use wined3d_buffer_create() in vertexbuffer_init().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-08 09:42:04 +01:00
Henri Verbeet
31250d6d4d
d3d9: Use the global memory allocation helpers.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-07 10:05:51 +01:00
Henri Verbeet
86baab093c
d3d9: Use wined3d_buffer_create() in indexbuffer_init().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-06 12:58:58 +01:00
Henri Verbeet
9275b06cc0
wined3d: Replace the pool in struct wined3d_resource_desc with resource access flags.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-02 18:36:45 +01:00
Henri Verbeet
2abf1dd323
wined3d: Get rid of WINED3D_POOL_SCRATCH.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-29 20:29:00 +01:00
Henri Verbeet
a6e17d1108
d3d9: Use wined3d_resource_unmap() in d3d9_indexbuffer_Unlock().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-30 19:09:21 +09:00
Henri Verbeet
4d638863fb
d3d9: Use wined3d_resource_map() in d3d9_indexbuffer_Lock().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-30 19:09:21 +09:00
Henri Verbeet
f1e7806721
d3d9: Use wined3d_resource_unmap() in d3d9_vertexbuffer_Unlock().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-30 19:09:20 +09:00
Henri Verbeet
a0400a686c
d3d9: Use wined3d_resource_map() in d3d9_vertexbuffer_Lock().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-30 19:09:20 +09:00
Henri Verbeet
53165034ba
wined3d: Unify resource preloads.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 12:08:58 +09:00
Stefan Dösinger
cf11933701
wined3d: Remove wined3d_buffer_set/get_priority.
2014-07-16 16:10:01 +02:00
Stefan Dösinger
f2b5bf26b7
d3d9: Use the private store api for buffers.
2014-03-24 20:20:16 +01:00
Stefan Dösinger
96a74e0cf7
d3d9: Introduce a resource structure.
2014-03-24 20:20:15 +01:00
Henri Verbeet
6341389fe4
d3d9: Get rid of IDirect3DIndexBuffer9Impl.
2012-05-31 18:05:32 +02:00
Henri Verbeet
503b16392b
d3d9: Get rid of IDirect3DVertexBuffer9Impl.
2012-05-31 18:05:29 +02:00
Henri Verbeet
2a63fe6624
d3d9: Get rid of IDirect3DDevice9Impl.
2012-05-29 10:45:09 +02:00
Henri Verbeet
949f7b4524
d3d9: COM cleanup for the IDirect3DVertexDeclaration9 interface.
2012-04-13 10:48:46 +02:00
Henri Verbeet
e53a277305
wined3d: Get rid of the WINED3DPOOL typedef.
2012-01-18 12:37:38 +01:00
Henri Verbeet
bd3b0ba697
d3d9: Don't expose wined3d internal flags to the application.
2012-01-11 17:47:18 +01:00
Michael Stefaniuc
17eccaffbf
d3d9: COM cleanup for the IDirect3DVertexBuffer9 iface.
2011-07-06 16:49:10 +02:00
Michael Stefaniuc
2b3a364e9a
d3d9: Use unsafe_impl_from_IDirect3DVertexBuffer9 for app provided ifaces.
2011-07-06 16:49:04 +02:00
Michael Stefaniuc
db1dd90225
d3d9: COM cleanup for the IDirect3DIndexBuffer9 iface.
2011-07-05 14:30:33 +02:00
Michael Stefaniuc
875d6900c6
d3d9: Use unsafe_impl_from_IDirect3DIndexBuffer9 for an app provided iface.
2011-07-05 14:30:31 +02:00
Henri Verbeet
a5ee9f1938
d3d9: Implement IDirect3DIndexBuffer9 private data handling on top of wined3d_resource.
2011-06-17 11:02:32 +02:00
Henri Verbeet
469eba24c0
d3d9: Implement IDirect3DVertexBuffer9 private data handling on top of wined3d_resource.
2011-06-17 11:02:28 +02:00
Henri Verbeet
8d4ca1f815
wined3d: Remove COM from the device implementation.
2011-05-17 10:06:18 +02:00
Henri Verbeet
00a5f38595
wined3d: Remove object creation methods from the IWineD3DDevice interface.
2011-05-11 14:56:48 +02:00
Michael Stefaniuc
d5739cd2c3
d3d9: Finish the COM cleanup of the IDirect3DDevice9Ex iface.
2011-04-25 11:40:35 +02:00
Henri Verbeet
adb1e10979
wined3d: Get rid of wined3d_buffer_get_desc().
2011-03-11 11:40:47 +01:00
Henri Verbeet
756fdb7c5a
wined3d: Merge the various resource desc structures.
2011-03-09 12:28:58 +01:00